summaryrefslogtreecommitdiff
path: root/plugins/git-remote-branch/git-remote-branch.plugin.zsh
diff options
context:
space:
mode:
authorRobby Russell <robby@planetargon.com>2012-12-04 08:27:13 -0800
committerRobby Russell <robby@planetargon.com>2012-12-04 08:27:13 -0800
commit178bce287ea26e5052091e66415521703848d5da (patch)
tree0db169c4861c0b0ce64eb7f9ae97fe5537558c53 /plugins/git-remote-branch/git-remote-branch.plugin.zsh
parent63deae380cece1abe4634e68a3e0df817b152da4 (diff)
parent0118b5b759f3471478065b2163250852b7fa8c73 (diff)
downloadzsh-178bce287ea26e5052091e66415521703848d5da.tar.gz
zsh-178bce287ea26e5052091e66415521703848d5da.tar.bz2
zsh-178bce287ea26e5052091e66415521703848d5da.zip
Merge branch 'master' of github.com:robbyrussell/oh-my-zsh
Diffstat (limited to 'plugins/git-remote-branch/git-remote-branch.plugin.zsh')
-rw-r--r--plugins/git-remote-branch/git-remote-branch.plugin.zsh18
1 files changed, 18 insertions, 0 deletions
diff --git a/plugins/git-remote-branch/git-remote-branch.plugin.zsh b/plugins/git-remote-branch/git-remote-branch.plugin.zsh
new file mode 100644
index 000000000..ff98cbf87
--- /dev/null
+++ b/plugins/git-remote-branch/git-remote-branch.plugin.zsh
@@ -0,0 +1,18 @@
+_git_remote_branch() {
+ ref=$(git symbolic-ref HEAD 2> /dev/null)
+ if [[ -n $ref ]]; then
+ if (( CURRENT == 2 )); then
+ # first arg: operation
+ compadd create publish rename delete track
+ elif (( CURRENT == 3 )); then
+ # second arg: remote branch name
+ compadd `git branch -r | grep -v HEAD | sed "s/.*\///" | sed "s/ //g"`
+ elif (( CURRENT == 4 )); then
+ # third arg: remote name
+ compadd `git remote`
+ fi
+ else;
+ _files
+ fi
+}
+compdef _git_remote_branch grb