2012-06-18 08:01:05 +00:00
|
|
|
_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
|
2013-04-23 23:11:52 +00:00
|
|
|
remotes=`git remote | tr '\n' '|' | sed "s/\|$//g"`
|
|
|
|
compadd `git branch -r | grep -v HEAD | sed "s/$remotes\///" | sed "s/ //g"`
|
2012-06-18 08:01:05 +00:00
|
|
|
elif (( CURRENT == 4 )); then
|
|
|
|
# third arg: remote name
|
|
|
|
compadd `git remote`
|
|
|
|
fi
|
|
|
|
else;
|
|
|
|
_files
|
|
|
|
fi
|
|
|
|
}
|
|
|
|
compdef _git_remote_branch grb
|