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

Re: [PATCH v2 4/4] git status: refresh the index if possible

From
Junio C Hamano <gitster@pobox.com>
Date
Apr 3, 2010, 04:33 UTC
Message-ID
<7v1vex9mur.fsf@alter.siamese.dyndns.org>
In-Reply-To
<1270244661-24173-1-git-send-email-markus.heidelberg@web.de>
Markus Heidelberg <markus.heidelberg@web.de> writes:
> Is rollback_lock_file(&index_lock) necessary? It isn't used in
> "git commit --dry-run" when commit_style is COMMIT_AS_IS.

That is because AS_IS commit does not even lock anything for writing, as AS_IS means just that: "git commit" does not touch the index but just writes tree out of the index.

Upon program exit (unless you get an uncontrolled crash), the lockfile API arranges atexit(3) to roll back the lockfiles, so it probably may not make much of a difference if you omitted rollback_lock_file(&index_lock) yourself, but it is a good idea to clean up the mess you made after you are done, especially if the mess is not something the operating system will clean up for us (e.g. open file descriptors, malloc'ed region of memory etc.)

To make sure that the failure case is covered, you may also want to add a test case where you run "chmod a-w $GIT_DIR" and then run status (but that test needs to be conditional on POSIXPERM).

Thanks.
Previous: Markus HeidelbergNext: Markus Heidelberg
Message 12 of 15 in “fix regression that "git status" doesn't refresh the index”
  1. 0/4 fix regression that "git status" doesn't refresh the indexMarkus Heidelberg, Apr 2, 2010
  2. 1/4 builtin/commit: fix duplicated sentence in a commentMarkus Heidelberg, Apr 2, 2010
  3. 2/4 builtin/commit: remove unnecessary variable definitionMarkus Heidelberg, Apr 2, 2010
  4. 3/4 t7508: add test for "git status" refreshing the indexMarkus Heidelberg, Apr 2, 2010
  5. 4/4 git status: refresh the indexMarkus Heidelberg, Apr 2, 2010
  6. Jeff KingApr 2, 2010
  7. Markus HeidelbergApr 2, 2010
  8. Jeff KingApr 2, 2010
  9. Junio C HamanoApr 2, 2010
  10. Markus HeidelbergApr 2, 2010
  11. 4/4 git status: refresh the index if possibleMarkus Heidelberg, Apr 2, 2010
  12. Junio C HamanoApr 3, 2010
  13. t7508: add a test for "git status" in a read-only repositoryMarkus Heidelberg, Apr 3, 2010
  14. Junio C HamanoApr 6, 2010
  15. Markus HeidelbergApr 3, 2010

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.