Re: [PATCH v2 1/4] completion: add 'git history' subcommands

Patrick Steinhardt <[email protected]>
Newsgroups org.kernel.vger.git
Message-ID <[email protected]>
On Thu, Aug 06, 2026 at 10:27:36PM +0200, Vincent Mailhol wrote:
> diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash
> index e875787710..7372e2919b 100644
> --- a/contrib/completion/git-completion.bash
> +++ b/contrib/completion/git-completion.bash
> @@ -2137,6 +2137,54 @@ _git_help ()
>  	fi
>  }
>  
> +__git_history_has_revision ()
> +{
> +	local i
> +
> +	for ((i = __git_cmd_idx + 2; i < cword; i++)); do
> +		case "${words[i]}" in
> +		--empty|--update-refs)
> +			((i++))
> +			;;

This will unfortunately be quite a pain to maintain going forward, as we
now have to be aware of updating this site every single time we add a
new option that accepts a parameter.

I don't really have a good idea for how to fix that reliably though, I
have to admit. Maybe we should just mostly ignore this edge case and
always complete references, unless we have seen a `--`? That can be
checked rather easily via `__git_hash_doubledash`.

That'd still be a huge win compared to the status quo, and if we really
care about making this work properly we can still iterate.

Patrick
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.