19 lines
508 B
Bash
19 lines
508 B
Bash
|
_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
|