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

Re: [PATCH] wt-status.c: Modified status message shown for a parent-less branch

From
Junio C Hamano <gitster@pobox.com>
Date
Jun 10, 2017, 11:02 UTC
Message-ID
<xmqqzidg14xn.fsf@gitster.mtv.corp.google.com>
In-Reply-To
<20170610102127.ftvko3m7gazavpj7@sigill.intra.peff.net>
Jeff King <peff@peff.net> writes:
Show 28 quoted lines
> On Sat, Jun 10, 2017 at 02:14:01PM +0530, Kaartic Sivaraam wrote:
> ...
>> # Please enter the commit message for your changes. Lines starting
>> # with '#' will be ignored, and an empty message aborts the commit.
>> # On branch master
>> #
>> # Waiting for initial commit
>> #
>> # Changes to be committed:
>> #       new file:   test-file
>> #
>> 
>> Looks odd. Not sure how to fix this. Maybe on of the alternatives have
>> to be considered. "Your current branch does not have any commits" seems
>> a good one.
>
> We could also add an option to "struct wt_status" to differentiate the
> two cases.
>
> I had forgotten completely that this would affect git-commit. And that
> explains the "Initial commit" text in the first place. This output
> originated as the git-commit template message, and only later was moved
> into the git-status command. And in the context of making a commit,
> saying "This is the initial commit" makes a lot of sense.
>
> And it probably does mean we want separate messages for status and
> commit. One is "if you were to make a commit, it would be the first".
> The other is "you are making the first commit".

Again, you said what I wanted to say in my review comment a lot better than I managed to say ;-)

When the current message "Initial commit" is read in the context together with "Changes to be committed", etc., by users of "git commit" who do not use the "-m message" option, it is clear that these are talking about the commit the user is about to make.

The confusion factor that triggered the discussion in the thread that resulted in this patch exists because the output from "git status" uses phrases that are designed to guide the user in working toward creating the next commit on the branch, even though the user may not be thinking in terms of "what would happen when I say 'commit' now?"

And I do not think the potential confusion is limited to "Initial commit" from that point of view. The files listed in "Changes to be committed" list are not files to be "committed", UNLESS the user is aware that s/he is asking "what would happen when I say 'commit' now?". When the question is "what is the status of my working area?", that phrase in the section header is suboptimal.

Adding a bit to "struct wt_status" is a good first step to allow all three (i.e. in addition to "Initial commit" and "Changes to be committed", "Changes not staged for commit" is the other one that shares this potential confusion factor) to be phrased in a way that is more appropriate in an answer to the question "what is the status of my working area?", I would think.

Thanks.
Previous: Jeff KingNext: Kaartic Sivaraam
Message 7 of 48 in “wt-status.c: Modified status message shown for a parent-less branch”
  1. wt-status.c: Modified status message shown for a parent-less branchKaartic Sivaraam, Jun 10, 2017
  2. Kaartic SivaraamJun 10, 2017
  3. Junio C HamanoJun 10, 2017
  4. Kaartic SivaraamJun 10, 2017
  5. Kaartic SivaraamJun 10, 2017
  6. Jeff KingJun 10, 2017
  7. Junio C HamanoJun 10, 2017
  8. Kaartic SivaraamJun 12, 2017
  9. Junio C HamanoJun 12, 2017
  10. Jeff KingJun 12, 2017
  11. Junio C HamanoJun 12, 2017
  12. Jeff KingJun 12, 2017
  13. Kaartic SivaraamJun 15, 2017
  14. Jeff KingJun 15, 2017
  15. Samuel LijinJun 15, 2017
  16. Jeff KingJun 15, 2017
  17. Kaartic SivaraamJun 16, 2017
  18. Jeff KingJun 16, 2017
  19. Kaartic SivaraamJun 18, 2017
  20. Contextually notify user about an initial commitKaartic Sivaraam, Jun 18, 2017
  21. Ævar Arnfjörð BjarmasonJun 18, 2017
  22. 1/2 Contextually notify user about an initial commitKaartic Sivaraam, Jun 19, 2017
  23. 2/2 Add test for the new status messageKaartic Sivaraam, Jun 19, 2017
  24. Junio C HamanoJun 19, 2017
  25. Kaartic SivaraamJun 19, 2017
  26. Jeff KingJun 19, 2017
  27. Kaartic SivaraamJun 19, 2017
  28. Junio C HamanoJun 19, 2017
  29. 2/2 Add test for the new status messageKaartic Sivaraam, Jun 19, 2017
  30. Jeff KingJun 19, 2017
  31. Kaartic SivaraamJun 19, 2017
  32. Junio C HamanoJun 19, 2017
  33. 1/3 Contextually notify user about an initial commitKaartic Sivaraam, Jun 20, 2017
  34. 2/3 Update test(s) that used old status messageKaartic Sivaraam, Jun 20, 2017
  35. 3/3 Add tests for the contextual initial status messageKaartic Sivaraam, Jun 20, 2017
  36. Ævar Arnfjörð BjarmasonJun 20, 2017
  37. Kaartic SivaraamJun 20, 2017
  38. Ævar Arnfjörð BjarmasonJun 20, 2017
  39. Kaartic SivaraamJun 21, 2017
  40. status: contextually notify user about an initial commitKaartic Sivaraam, Jun 21, 2017
  41. Kaartic SivaraamJun 21, 2017
  42. Ævar Arnfjörð BjarmasonJun 21, 2017
  43. Kaartic SivaraamJun 21, 2017
  44. Junio C HamanoJun 21, 2017
  45. status: contextually notify user about an initial commitKaartic Sivaraam, Jun 21, 2017
  46. Junio C HamanoJun 22, 2017
  47. Kaartic SivaraamJun 22, 2017
  48. Philip OakleyJun 10, 2017

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.