git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] completion: Support exclude prefix, ^<rev>

From
SZEDER Gábor <szeder@ira.uka.de>
Date
Apr 22, 2015, 13:03 UTC
Message-ID
<20150422150327.Horde.JQeFwEt1H0b2m6uCwo2Grw1@webmail.informatik.kit.edu>
Hi,
Quoting Trygve Aaberge <trygveaa@gmail.com>:
> When using the exclude pattern, ^<rev>, the completion did not work.
> This enables completion after ^ in the same way that completion after ..
> is done.

Interesting, thinking back I can't recall I've ever needed multiple exclude patterns on the command line, and a single exclude is well served by the rev1..rev2 notion. Of course that doesn't mean that nobody might need it, and since it's easy to implement, I'm for it.

Show 18 quoted lines
> Signed-off-by: Trygve Aaberge <trygveaa@gmail.com>
> ---
> contrib/completion/git-completion.bash | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/contrib/completion/git-completion.bash  
> b/contrib/completion/git-completion.bash
> index 8cfee95..3036dac 100644
> --- a/contrib/completion/git-completion.bash
> +++ b/contrib/completion/git-completion.bash
> @@ -496,6 +496,10 @@ __git_complete_revlist_file ()
> 		cur_="${cur_#*..}"
> 		__gitcomp_nl "$(__git_refs)" "$pfx" "$cur_"
> 		;;
> +	^*)
> +		cur_="${cur_#^}"
> +		__gitcomp_nl "$(__git_refs)" "^" "$cur_"
> +		;;

This is good, but considering the other cases I suggest making this the very first case. That way we would not complete e.g. refs after '^rev..<TAB>', which would lead to a "bad revision" error when the command is executed, or tracked paths after '^rev:<TAB>', which I think doesn't make sense, though doesn't lead to error.

Show 5 quoted lines
> 	*)
> 		__gitcomp_nl "$(__git_refs)"
> 		;;
> --
> 2.2.2
Message 1 of 1 in “Re: [PATCH] completion: Support exclude prefix, ^<rev>”
  1. SZEDER GáborApr 22, 2015

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.