diff options
author | Jay Soffian <jaysoffian@gmail.com> | 2009-03-05 23:39:31 -0500 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2009-03-07 20:19:45 -0800 |
commit | 52d5c3b5b22b6a672ace19f631768a63bb6a2250 (patch) | |
tree | 20f7a3fdde7cdd0cffe7a85f7c1bb0c6cd0cd5ac /refs.c | |
parent | Brown paper bag fix for MinGW 64-bit stat (diff) | |
download | tgif-52d5c3b5b22b6a672ace19f631768a63bb6a2250.tar.xz |
bash completion: fix completion issues with fetch, pull, and push
Sverre Rabbelier noticed a completion issue with push:
$ git push ori<tab>
git push origin
$ git push -f ori<tab>
git push -f origin/
Markus Heidelberg pointed out that the issue extends to fetch and pull.
The reason is that the current code naively assumes that if
COMP_CWORD=2, it should complete a remote name, otherwise it should
complete a refspec. This assumption fails if there are any --options.
This patch fixes that issue by instead scanning COMP_CWORDS to see if
the remote has been completed yet (we now assume the first non-dashed
argument is the remote). The new logic is factored into a function,
shared by fetch, pull, and push.
The new function also properly handles '.' as the remote.
Signed-off-by: Jay Soffian <jaysoffian@gmail.com>
Acked-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'refs.c')
0 files changed, 0 insertions, 0 deletions