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

Re: [PATCHv2 3/3] git-add: rename -u to -a

From
Michael J Gruber <git@drmicha.warpmail.net>
Date
Feb 28, 2011, 10:53 UTC
Message-ID
<4D6B7E91.4050308@drmicha.warpmail.net>
In-Reply-To
<vpqr5aslbje.fsf@bauges.imag.fr>
Matthieu Moy venit, vidit, dixit 28.02.2011 11:05:
Show 28 quoted lines
> Michael J Gruber <git@drmicha.warpmail.net> writes:
> 
>> Matthieu Moy venit, vidit, dixit 28.02.2011 10:40:
>> 
>>> # let's see what happens ... $ git add $ # ok, nothing happened
>>> ... # continue hacking without noticing that a bunch of files
>>> have been added.
>> 
>> No no, I said "add" would default to what "-u" does now (see
>> below).
> 
> Right, that less disturbing than I wrote (but still potentially 
> disturbing)
> 
>>> Mercurial has taken the other way, making "hg add" add everything
>>> by default, and some users do complain:
>>> 
>>> http://osdir.com/ml/version-control.mercurial.general/2007-08/msg00316.html
>>
>>
>>> Since when do we care about them (as in "hg", not in "users", mind
>> you...).
> 
> If you don't care about experiences of others, I can do nothing for
> you. I don't have a crystal ball, so I can't say what Git users will
> say about a given feature, but I can look around me (I'm sure you can
> too) and see how it went for other people.
> 

Between hg and git, add and commit are very different. Haven't we all seen these super smart comparisons saying

hg add is much faster than git add, but git commit is much faster than hg commit?

They do completely different things. When used after each other, they do "A+B+C", but "hg add" does "A", "hg commit" "B+C", whereas "git add" does "A+B", "git commit" does "C" (with pathspecs for add, no options).

Because of that, and also because I haven't thought about/suggested/proposed what "hg add" seems to do by default now, I dismiss that experience as unrelated. "hg add" is partially related to "git add" only, and their default is completely different from what I've mentioned.

(I think you know hg and git well enough to know this difference, and also know from the list that I do care [even in your quote], or I would have explained that in the first place).

Show 29 quoted lines
>>> If you change this for Git, you'll have people complaining about 
>>> backward compatibility plus people complaining about least
>>> surprise :-(
>>> 
>>>> - "add" should be about tracked paths by default (default
>>>> pathspec "."),
>> 
>> See, here!
>> 
>>>> 
>>>> - "commit -a,--add <addopts>" be "add <addopts> && commit",
>>>> and
>>>> 
>>>> - "-A,--all pathspec" (default pathspec ".") be about tracked
>>>> and untracked paths (whether add or commit).
>>> 
>>> Today, "git add ." adds new content in tracked files, and new
>>> files, but doesn't notice files deletions. Did I miss something,
>>> or is there no way to do that with your proposal?
>> 
>> What in
>> 
>>> That would need a proper migration plan etc., and some thinking
>>> about -i/-o. Just brain-storming.
>> 
>> reads "proposal" to you?
> 
> What's wrong with you today? Miles asks a honnest question and gets
> a dissertation about the netiquette,

A question answered in the post he replied to (but failed to quote). Given my previous encounters the other day, an explanation of our netiquette seemed in order (other lists trim much more then we do), and non the less I did so politely, and I even appreciated his leaving cc in place (which other lists do differently, and proves his openness to adapt).

> I ask another question, mention
> the experience of other people and get this.

Jeff, then Junio and I have been discussing ways forward to improve the user experience with respect to related options of "add" and "commit" (which are similar and named differently, or dissimilar and named the same), and everyone is welcome to join (of course; just to be clear), there is no consensus yet. Every voice counts.

> I did read "brainstorming" in your email, tried to brainstorm with
> you, but you're not making it easy to us. I'm stopping here, sorry
> for disturbing.

What is not OK is trimming down my posts to the amount that they make no sense any more, or a completely different sense, and then commenting on that skewed quote, forcing me to reexplain what I had explained already. This makes us go in circles, rather than forward. It's a waste of resources.

You may have been unlucky in being number "n+1" to do so to me on-list today, and maybe in "proposal" being more formal in English than in French, alleviated by the fact that you cut out my sentence

"I know I'm getting a bit radical here, but the more I think about it, I feel that"

introducing the list of items which you did quote (no to mention the whole reasoning building up to that). So, not just poor luck, you see;)

Writing that long post (with a large unradical part, and a short radical brain-storming) I was afraid already it would make people read partially only. I hope we'll turn that into a more constructive direction again.

Michael
Previous: Matthieu MoyNext: Junio C Hamano
Message 29 of 30 in “add/commit -u/-a/-A”
  1. 0/3 add/commit -u/-a/-AMichael J Gruber, Feb 25, 2011
  2. 1/3 git-add: make -A description clearer vs. -uMichael J Gruber, Feb 25, 2011
  3. Junio C HamanoFeb 25, 2011
  4. 2/3 git-commit: rename --all to --trackMichael J Gruber, Feb 25, 2011
  5. Junio C HamanoFeb 25, 2011
  6. 3/3 git-add: rename -u to -aMichael J Gruber, Feb 25, 2011
  7. Junio C HamanoFeb 25, 2011
  8. Michael J GruberFeb 26, 2011
  9. 0/3 add/commit -u/-a/-AMichael J Gruber, Feb 27, 2011
  10. 1/3 git-add: make -A description clearer vs. -uMichael J Gruber, Feb 27, 2011
  11. Junio C HamanoFeb 27, 2011
  12. 2/3 git-commit: rename --all to --all-trackedMichael J Gruber, Feb 27, 2011
  13. 3/3 git-add: rename -u to -aMichael J Gruber, Feb 27, 2011
  14. Nguyen Thai Ngoc DuyFeb 27, 2011
  15. Junio C HamanoFeb 28, 2011
  16. Michael J GruberFeb 28, 2011
  17. Miles BaderFeb 28, 2011
  18. Michael J GruberFeb 28, 2011
  19. Miles BaderFeb 28, 2011
  20. Snipping on this list (Was: Re: [PATCHv2 3/3] git-add: rename -u to -a)Michael J Gruber, Feb 28, 2011
  21. Junio C HamanoFeb 28, 2011
  22. Miles BaderFeb 28, 2011
  23. Michael J GruberFeb 28, 2011
  24. Matthieu MoyFeb 28, 2011
  25. Michael J GruberFeb 28, 2011
  26. Tor ArntsenFeb 28, 2011
  27. Michael J GruberFeb 28, 2011
  28. Matthieu MoyFeb 28, 2011
  29. Michael J GruberFeb 28, 2011
  30. Junio C HamanoFeb 28, 2011

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.