diff options
author | Gianluca Recchia <gianluca.recchia97@gmail.com> | 2018-12-30 03:10:49 +0100 |
---|---|---|
committer | Gianluca Recchia <gianluca.recchia97@gmail.com> | 2019-01-29 04:11:02 +0100 |
commit | 308b046875f745abb87b3ef9f0382029fe37b452 (patch) | |
tree | 7a6413c9d688b2b8d0837465caf335452eeb2c97 /plugins | |
parent | b9670d04092a461ae1db41080263b5a82bc1f958 (diff) | |
download | zsh-308b046875f745abb87b3ef9f0382029fe37b452.tar.gz zsh-308b046875f745abb87b3ef9f0382029fe37b452.tar.bz2 zsh-308b046875f745abb87b3ef9f0382029fe37b452.zip |
Use stash 'push' or 'save' depending on Git version
A utility function now parses the output of git --version and set the
alias for git stash to 'git stash push' iff the current version of Git
is greater than 2.13; it falls back to 'git stash save' otherwise.
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/git/git.plugin.zsh | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/plugins/git/git.plugin.zsh b/plugins/git/git.plugin.zsh index 2251bae2e..17e4d4b9d 100644 --- a/plugins/git/git.plugin.zsh +++ b/plugins/git/git.plugin.zsh @@ -33,6 +33,11 @@ function work_in_progress() { fi } +function _omz_git_stash_command() { + [[ `git --version 2>/dev/null` =~ '^git version ([[:digit:]]+.[[:digit:]]+)' && "$match[1]" >= '2.13' ]] \ + && echo push || echo save +} + # # Aliases # (sorted alphabetically) @@ -238,7 +243,7 @@ alias gsps='git show --pretty=short --show-signature' alias gsr='git svn rebase' alias gss='git status -s' alias gst='git status' -alias gsta='git stash save' +alias gsta="git stash $(_omz_git_stash_command)" alias gstaa='git stash apply' alias gstc='git stash clear' alias gstd='git stash drop' |