Code

bash: offer only paths after '--'
authorSZEDER Gábor <szeder@ira.uka.de>
Tue, 8 Jul 2008 16:56:14 +0000 (18:56 +0200)
committerJunio C Hamano <gitster@pobox.com>
Tue, 8 Jul 2008 23:35:05 +0000 (16:35 -0700)
commitd773c6314d5660266313772b3fd8a466c3dbc559
tree39b835c06f96d6ffa7d03bb860cadc4d55923f66
parent1db4a75c8d18d8827ac710e87219b349558d9196
bash: offer only paths after '--'

Many git commands use '--' to separate subcommands, options, and refs
from paths.  However, the programmable completion for several of these
commands does not respect the '--', and offer subcommands, options, or
refs after a '--', although only paths are permitted.  e.g. 'git bisect
-- <TAB>' offers subcommands, 'git log -- --<TAB>' offers options and
'git log -- git<TAB>' offers all gitgui tags.

The completion for the following commands share this wrong behaviour:
  am add bisect commit diff log reset shortlog submodule gitk.

To avoid this, we check the presence of a '--' on the command line first
and let the shell do filename completion, if one is found.

Signed-off-by: SZEDER Gábor <szeder@ira.uka.de>
Acked-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
contrib/completion/git-completion.bash