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

Re: [PATCH v3 0/2] completion: hide dotfiles for selected path completion

From
Junio C Hamano <gitster@pobox.com>
Date
Jun 21, 2026, 01:17 UTC
Message-ID
<xmqq1pe0g08t.fsf@gitster.g>
In-Reply-To
<pull.2311.v3.git.git.1781978156.gitgitgadget@gmail.com>
"Zakariyah Ali via GitGitGadget" <gitgitgadget@gmail.com> writes:
Show 10 quoted lines
> The completion helper for index paths uses git ls-files rather than shell
> filename completion. As a result, leading-dot paths such as a tracked
> .gitignore were offered even when the user had not started the path with ..
>
> Hide leading-dot path components for git rm, git mv, and git ls-files when
> completing an empty path component. Explicit dot completion is still
> preserved, so git rm . can still complete .gitignore.
>
> This removes the existing TODO expectations in t/t9902-completion.sh and
> adds coverage for explicit dot completion.
OK.
Show 6 quoted lines
> Validation:
>
>  * git diff --check -- contrib/completion/git-completion.bash
>    t/t9902-completion.sh
>  * bash -n contrib/completion/git-completion.bash
>  * ./t9902-completion.sh

I am not sure what you wanted to say with these lines. If you did the above to build confidence that your patch works, that would be great. Or are you telling readers to do these things and when they do not see any issues consider your patch perfect?

What is missing around here in this cover letter is a description of how this iteration is different from the previous one. And ...

Show 18 quoted lines
> Zakariyah Ali (2):
>   completion: hide dotfiles for selected path completion
>   completion: hide dotfiles by default for path completion
>
>  contrib/completion/git-completion.bash | 53 +++++++++++++++-----------
>  t/t9902-completion.sh                  | 19 ++++-----
>  2 files changed, 40 insertions(+), 32 deletions(-)
>
>
> base-commit: 9b7fa37559a1b95ee32e32858b0d038b4cf583e5
> Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-2311%2Falibaba0010%2Fcompletion-hide-dotfiles-v3
> Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-2311/alibaba0010/completion-hide-dotfiles-v3
> Pull-Request: https://github.com/git/git/pull/2311
>
> Range-diff vs v2:
>
>  1:  056e239e06 = 1:  056e239e06 completion: hide dotfiles for selected path completion
>  -:  ---------- > 2:  7482ee4645 completion: hide dotfiles by default for path completion

... I find this range diff very troubling. If we look at patch 2, it seems that it redoes some part of what is done in patch 1 saying "oops that was wrong, so let's do it better this time". Such a drunken-mans' walk that goes in one direction in an earlier step, only to be corrected to move to a different course, is now how we want a new topic to be presented.

The end result may be much easier to read, mostly thanks to updated loop in the awk script, so if we really want to pretend this as two patches for "small pieces are easier to digest" value, perhaps have [PATCH 1/2] that updates the awk script (without doing anything related to hide-dotfiles theme) to make it easier to read by not having multiple "print pfx p" in it, and then build on top of that improved base, have [PATCH 2/2] that adds the support to hide dotfiles, perhaps?

Since the initial iteration was quite a while ago, I no longer remember the details of the review I gave, but I recall having hard time telling which callers of the complete-index-file helper hide dotfiles from their output and which callers do not hide them, and how the patch decided to choose which ones should and should not hide. Has it been improved and if so how? That is something we expect the cover letter to tell, too.

Thanks.
Previous: Zakariyah Ali via GitGitGadgetNext: D. Ben Knoble
Message 10 of 14 in “completion: hide dotfiles for selected path completion”
  1. completion: hide dotfiles for selected path completionZakariyah Ali via GitGitGadget, May 24, 2026
  2. Junio C HamanoMay 24, 2026
  3. completion: hide dotfiles for selected path completionZakariyah Ali via GitGitGadget, May 26, 2026
  4. Junio C HamanoMay 27, 2026
  5. Follow-up and appreciation regarding Git contributionsZakariyah Ali, Jun 3, 2026
  6. Junio C HamanoJun 10, 2026
  7. 0/2 completion: hide dotfiles for selected path completionZakariyah Ali via GitGitGadget, Jun 20, 2026
  8. 1/2 completion: hide dotfiles for selected path completionZakariyah Ali via GitGitGadget, Jun 20, 2026
  9. 2/2 completion: hide dotfiles by default for path completionZakariyah Ali via GitGitGadget, Jun 20, 2026
  10. Junio C HamanoJun 21, 2026
  11. D. Ben KnobleJun 21, 2026
  12. Junio C HamanoJun 21, 2026
  13. Junio C HamanoJun 29, 2026
  14. Junio C HamanoJul 23, 2026

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.