Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Merge branch 'release/0.4.0.2'

  • Loading branch information...
commit 5945702c13e5c3ee7e698bcf3a981eba288529f0 2 parents 0e218ab + 56ff8b4
@bobthecow authored
Showing with 137 additions and 137 deletions.
  1. +137 −137 git-flow-completion.zsh
View
274 git-flow-completion.zsh
@@ -1,23 +1,23 @@
#!zsh
-#
+#
# Installation
# ------------
-#
+#
# To achieve git-flow completion nirvana:
-#
+#
# 0. Update your zsh's git-completion module to the newest verion.
-# From here. http://zsh.git.sourceforge.net/git/gitweb.cgi?p=zsh/zsh;a=blob_plain;f=Completion/Unix/Command/_git;hb=HEAD
-#
+# From here. http://zsh.git.sourceforge.net/git/gitweb.cgi?p=zsh/zsh;a=blob_plain;f=Completion/Unix/Command/_git;hb=HEAD
+#
# 1. Install this file. Either:
-#
+#
# a. Place it in your .zshrc:
-#
+#
# b. Or, copy it somewhere (e.g. ~/.git-flow-completion.zsh) and put the following line in
# your .zshrc:
-#
+#
# source ~/.git-flow-completion.zsh
#
-# c. Or, use this file as a oh-my-zsh plugin.
+# c. Or, use this file as a oh-my-zsh plugin.
#
_git-flow ()
@@ -26,12 +26,12 @@ _git-flow ()
typeset -A opt_args
_arguments -C \
- ':command:->command' \
- '*::options:->options'
+ ':command:->command' \
+ '*::options:->options'
case $state in
(command)
-
+
local -a subcommands
subcommands=(
'init:Initialize a new git repo with support for the branching model.'
@@ -43,32 +43,32 @@ _git-flow ()
)
_describe -t commands 'git flow' subcommands
;;
-
+
(options)
case $line[1] in
-
+
(init)
_arguments \
- -f'[Force setting of gitflow branches, even if already configured]'
+ -f'[Force setting of gitflow branches, even if already configured]'
;;
-
+
(version)
;;
-
+
(hotfix)
__git-flow-hotfix
;;
-
+
(release)
__git-flow-release
;;
-
+
(feature)
__git-flow-feature
;;
- esac
- ;;
- esac
+ esac
+ ;;
+ esac
}
__git-flow-release ()
@@ -77,49 +77,49 @@ __git-flow-release ()
typeset -A opt_args
_arguments -C \
- ':command:->command' \
- '*::options:->options'
+ ':command:->command' \
+ '*::options:->options'
case $state in
(command)
-
+
local -a subcommands
subcommands=(
- 'start:Start a new release branch'
- 'finish:Finish a release branche.'
+ 'start:Start a new release branch.'
+ 'finish:Finish a release branch.'
'list:List all your release branches. (Alias to `git flow release`)'
)
_describe -t commands 'git flow release' subcommands
_arguments \
- -v'[Verbose (more) output]'
+ -v'[Verbose (more) output]'
;;
-
+
(options)
case $line[1] in
-
+
(start)
_arguments \
- -F'[Fetch from origin before performing finish]'\
- ':version:__git_flow_version_list'
- ;;
-
+ -F'[Fetch from origin before performing finish]'\
+ ':version:__git_flow_version_list'
+ ;;
+
(finish)
_arguments \
- -F'[Fetch from origin before performing finish]' \
- -s'[Sign the release tag cryptographically]'\
- -u'[Use the given GPG-key for the digital signature (implies -s)]'\
- -m'[Use the given tag message]'\
- -p'[Push to $ORIGIN after performing finish]'\
- ':version:__git_flow_version_list'
+ -F'[Fetch from origin before performing finish]' \
+ -s'[Sign the release tag cryptographically]'\
+ -u'[Use the given GPG-key for the digital signature (implies -s)]'\
+ -m'[Use the given tag message]'\
+ -p'[Push to $ORIGIN after performing finish]'\
+ ':version:__git_flow_version_list'
;;
-
+
*)
_arguments \
- -v'[Verbose (more) output]'
- ;;
- esac
- ;;
- esac
+ -v'[Verbose (more) output]'
+ ;;
+ esac
+ ;;
+ esac
}
__git-flow-hotfix ()
@@ -128,50 +128,50 @@ __git-flow-hotfix ()
typeset -A opt_args
_arguments -C \
- ':command:->command' \
- '*::options:->options'
+ ':command:->command' \
+ '*::options:->options'
case $state in
(command)
-
+
local -a subcommands
subcommands=(
- 'start:Start a new hotfix branch'
- 'finish:Finish a hotfix branche.'
+ 'start:Start a new hotfix branch.'
+ 'finish:Finish a hotfix branch.'
'list:List all your hotfix branches. (Alias to `git flow hotfix`)'
)
_describe -t commands 'git flow hotfix' subcommands
_arguments \
- -v'[Verbose (more) output]'
+ -v'[Verbose (more) output]'
;;
-
+
(options)
case $line[1] in
-
+
(start)
_arguments \
- -F'[Fetch from origin before performing finish]'\
+ -F'[Fetch from origin before performing finish]'\
':hotfix:__git_flow_version_list'\
':branch-name:__git_branch_names'
- ;;
-
+ ;;
+
(finish)
_arguments \
- -F'[Fetch from origin before performing finish]' \
- -s'[Sign the release tag cryptographically]'\
- -u'[Use the given GPG-key for the digital signature (implies -s)]'\
- -m'[Use the given tag message]'\
- -p'[Push to $ORIGIN after performing finish]'\
- ':hotfix:__git_flow_hotfix_list'
+ -F'[Fetch from origin before performing finish]' \
+ -s'[Sign the release tag cryptographically]'\
+ -u'[Use the given GPG-key for the digital signature (implies -s)]'\
+ -m'[Use the given tag message]'\
+ -p'[Push to $ORIGIN after performing finish]'\
+ ':hotfix:__git_flow_hotfix_list'
;;
-
+
*)
_arguments \
- -v'[Verbose (more) output]'
- ;;
- esac
- ;;
- esac
+ -v'[Verbose (more) output]'
+ ;;
+ esac
+ ;;
+ esac
}
__git-flow-feature ()
@@ -180,17 +180,17 @@ __git-flow-feature ()
typeset -A opt_args
_arguments -C \
- ':command:->command' \
- '*::options:->options'
+ ':command:->command' \
+ '*::options:->options'
case $state in
(command)
-
+
local -a subcommands
subcommands=(
- 'start:Start a new hotfix branch'
- 'finish:Finish a hotfix branche.'
- 'list:List all your hotfix branches. (Alias to `git flow hotfix`)'
+ 'start:Start a new feature branch.'
+ 'finish:Finish a feature branch.'
+ 'list:List all your feature branches. (Alias to `git flow feature`)'
'publish: public'
'track: track'
'diff: diff'
@@ -198,135 +198,135 @@ __git-flow-feature ()
'checkout: checkout'
'pull: pull'
)
- _describe -t commands 'git flow hotfix' subcommands
+ _describe -t commands 'git flow feature' subcommands
_arguments \
- -v'[Verbose (more) output]'
+ -v'[Verbose (more) output]'
;;
-
+
(options)
case $line[1] in
-
+
(start)
_arguments \
- -F'[Fetch from origin before performing finish]'\
+ -F'[Fetch from origin before performing finish]'\
':feature:__git_flow_feature_list'\
':branch-name:__git_branch_names'
- ;;
-
+ ;;
+
(finish)
_arguments \
- -F'[Fetch from origin before performing finish]' \
- -r'[Rebase instead of merge]'\
- ':feature:__git_flow_feature_list'
+ -F'[Fetch from origin before performing finish]' \
+ -r'[Rebase instead of merge]'\
+ ':feature:__git_flow_feature_list'
;;
-
+
(publish)
_arguments \
':feature:__git_flow_feature_list'\
- ;;
-
+ ;;
+
(track)
_arguments \
':feature:__git_flow_feature_list'\
- ;;
-
+ ;;
+
(diff)
_arguments \
':branch:__git_branch_names'\
- ;;
+ ;;
(rebase)
_arguments \
- -i'[Do an interactive rebase]' \
- ':branch:__git_branch_names'
+ -i'[Do an interactive rebase]' \
+ ':branch:__git_branch_names'
;;
(checkout)
_arguments \
':branch:__git_flow_feature_list'\
- ;;
+ ;;
(pull)
_arguments \
':remote:__git_remotes'\
':branch:__git_branch_names'
- ;;
-
+ ;;
+
*)
_arguments \
- -v'[Verbose (more) output]'
- ;;
- esac
- ;;
- esac
+ -v'[Verbose (more) output]'
+ ;;
+ esac
+ ;;
+ esac
}
__git_flow_version_list ()
{
- local expl
- declare -a versions
+ local expl
+ declare -a versions
- versions=(${${(f)"$(_call_program versions git flow release list 2> /dev/null | tr -d ' |*')"}})
- __git_command_successful || return
+ versions=(${${(f)"$(_call_program versions git flow release list 2> /dev/null | tr -d ' |*')"}})
+ __git_command_successful || return
- _wanted versions expl 'version' compadd $versions
+ _wanted versions expl 'version' compadd $versions
}
__git_flow_feature_list ()
{
- local expl
- declare -a features
+ local expl
+ declare -a features
- features=(${${(f)"$(_call_program features git flow feature list 2> /dev/null | tr -d ' |*')"}})
- __git_command_successful || return
+ features=(${${(f)"$(_call_program features git flow feature list 2> /dev/null | tr -d ' |*')"}})
+ __git_command_successful || return
- _wanted features expl 'feature' compadd $features
+ _wanted features expl 'feature' compadd $features
}
__git_remotes () {
- local expl gitdir remotes
+ local expl gitdir remotes
- gitdir=$(_call_program gitdir git rev-parse --git-dir 2>/dev/null)
- __git_command_successful || return
+ gitdir=$(_call_program gitdir git rev-parse --git-dir 2>/dev/null)
+ __git_command_successful || return
- remotes=(${${(f)"$(_call_program remotes git config --get-regexp '"^remote\..*\.url$"')"}//#(#b)remote.(*).url */$match[1]})
- __git_command_successful || return
+ remotes=(${${(f)"$(_call_program remotes git config --get-regexp '"^remote\..*\.url$"')"}//#(#b)remote.(*).url */$match[1]})
+ __git_command_successful || return
- # TODO: Should combine the two instead of either or.
- if (( $#remotes > 0 )); then
- _wanted remotes expl remote compadd $* - $remotes
- else
- _wanted remotes expl remote _files $* - -W "($gitdir/remotes)" -g "$gitdir/remotes/*"
- fi
+ # TODO: Should combine the two instead of either or.
+ if (( $#remotes > 0 )); then
+ _wanted remotes expl remote compadd $* - $remotes
+ else
+ _wanted remotes expl remote _files $* - -W "($gitdir/remotes)" -g "$gitdir/remotes/*"
+ fi
}
__git_flow_hotfix_list ()
{
- local expl
- declare -a hotfixes
+ local expl
+ declare -a hotfixes
- hotfixes=(${${(f)"$(_call_program hotfixes git flow hotfix list 2> /dev/null | tr -d ' |*')"}})
- __git_command_successful || return
+ hotfixes=(${${(f)"$(_call_program hotfixes git flow hotfix list 2> /dev/null | tr -d ' |*')"}})
+ __git_command_successful || return
- _wanted hotfixes expl 'hotfix' compadd $hotfixes
+ _wanted hotfixes expl 'hotfix' compadd $hotfixes
}
__git_branch_names () {
- local expl
- declare -a branch_names
+ local expl
+ declare -a branch_names
- branch_names=(${${(f)"$(_call_program branchrefs git for-each-ref --format='"%(refname)"' refs/heads 2>/dev/null)"}#refs/heads/})
- __git_command_successful || return
+ branch_names=(${${(f)"$(_call_program branchrefs git for-each-ref --format='"%(refname)"' refs/heads 2>/dev/null)"}#refs/heads/})
+ __git_command_successful || return
- _wanted branch-names expl branch-name compadd $* - $branch_names
+ _wanted branch-names expl branch-name compadd $* - $branch_names
}
__git_command_successful () {
- if (( ${#pipestatus:#0} > 0 )); then
- _message 'not a git repository'
- return 1
- fi
- return 0
+ if (( ${#pipestatus:#0} > 0 )); then
+ _message 'not a git repository'
+ return 1
+ fi
+ return 0
}
zstyle ':completion:*:*:git:*' user-commands flow:'description for foo'
Please sign in to comment.
Something went wrong with that request. Please try again.