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
Junio C Hamano <gitster@pobox.com>
Date
Jun 16, 2025, 01:25 UTC
Message-ID
<xmqqbjqo4gw7.fsf@gitster.g>
In-Reply-To
<20250615144604.1447302-1-502024330056@smail.nju.edu.cn>
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".

> 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).

> 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.
Previous: Lidong YanNext: Lidong Yan
Message 14 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.