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

Re: [RFC PATCH v3 0/2] small fixes for git.c and setup.c

From
Lidong Yan <502024330056@smail.nju.edu.cn>
Date
Jun 16, 2025, 01:36 UTC
Message-ID
<0AE631DC-F4C6-4896-BAE0-F0D35E4E642A@smail.nju.edu.cn>
In-Reply-To
<xmqqbjqo4gw7.fsf@gitster.g>
Junio C Hamano <gitster@pobox.com> writes:
Show 11 quoted lines
> 
> Lidong Yan <yldhome2d2@gmail.com> writes:
> 
>> I've been reading through the git code from the beginning. This
>> patch series fixes some NEEDSWORKs and cleans up some unnecessary
>> uses of the_repository that I came across.
> 
> FYI, when we have "NEEDSWORK: do X", the intention is often "we
> haven't spent enough brain cycles when we wrote this comment, so the
> first step is to evaluate if doing X is a sensible thing in the
> first place, and only if that is the case, do X".

Understood. I initially thought that NEEDSWORK indicated work that was guaranteed to be implemented later.

Show 8 quoted lines
> 
>> The first commit replace the use of the_repository to run_builtin()'s
>> argument repo. Since each caller pass the_repository to run_builtin(),
>> this replacement is safe.
> 
> That change is safe.  I'd rather see the comment left intact or
> reverted to the original shape to clarify what code the comment
> applies to (see the other message).

I’d like to revert the comment to original shape and split it into separate commit. The reason I changed this comment was simply because I found it a bit confusing when reading through the code.

Show 17 quoted lines
> 
>> The second commit takes care of a NEEDSWORK in setup_git_directory_gently()
>> we now properly error out if we hit a .git that is not a file or directory
>> when looking for the .git.
> 
> We used to just ignore and keep going to check the parent directory,
> right?  Now we would error out when .git is a FIFO or device or any
> other random things.  Is a bit of behaviour change, but I am not
> sure if it is worth doing.  As finding these weird non-file things
> in your working tree and naming them ".git" is extremely rare and
> useless (from Git's point of view), I suspect that the user is
> deliberately doing so for whatever reason they have, so it smells
> like this change has very little chance to detect a real problem
> with a larger chance to break a set-up that was deliberately done by
> the end-user.  I dunno.
> 
> Thanks.
I would just discard the commit about NEEDSWORK.

Thanks for your review, Lidong

Previous: Junio C HamanoNext: Lidong Yan
Message 15 of 16 in “git.c: remove the_repository dependence in run_builtin()”
  1. git.c: remove the_repository dependence in run_builtin()Lidong Yan, Jun 12, 2025
  2. Junio C HamanoJun 12, 2025
  3. lidongyanJun 13, 2025
  4. Junio C HamanoJun 13, 2025
  5. git.c: remove the_repository dependence in run_builtin()Lidong Yan, Jun 14, 2025
  6. Junio C HamanoJun 14, 2025
  7. Lidong YanJun 15, 2025
  8. Junio C HamanoJun 16, 2025
  9. Lidong YanJun 16, 2025
  10. Junio C HamanoJun 16, 2025
  11. 0/2 small fixes for git.c and setup.cLidong Yan, Jun 15, 2025
  12. 1/2 git.c: remove the_repository dependence in run_builtin()Lidong Yan, Jun 15, 2025
  13. 2/2 setup: fix NEEDSWORK in setup_git_directory_gently()Lidong Yan, Jun 15, 2025
  14. Junio C HamanoJun 16, 2025
  15. Lidong YanJun 16, 2025
  16. git.c: remove the_repository dependence in run_builtin()Lidong Yan, Jun 16, 2025

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.