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

Re: [PATCH 0/4] make pathless 'add [-u|-A]' warning less noisy

From
Jeff King <peff@peff.net>
Date
Mar 19, 2013, 04:25 UTC
Message-ID
<20130319042514.GA4807@sigill.intra.peff.net>
In-Reply-To
<20130319034415.GI5062@elie.Belkin>
On Mon, Mar 18, 2013 at 08:44:15PM -0700, Jonathan Nieder wrote:
Show 10 quoted lines
> >                                                          The
> > config option added by this patch gives them such an option.
> 
> I suspect the need for this config option is a sign that the warning
> is too eager.  After all, the whole idea of the change being safe is
> that it shouldn't make a difference the way people usually use git,
> no?
> 
> In other words, how about the following patches?  With them applied,
> hopefully no one would mind even if the warning becomes a fatal error.

Clever. I think it would help in my case. I sometimes follow the workflow you describe in patch 3 (i.e., just working in a subdir), and sometimes do something more like:

  $ vi foo.c
  $ cd t
  $ vi tXXXX-foo.sh
  $ ./tXXXX-foo.sh
  $ git add -u

With your patches, we would continue to warn about the second case, but I think that is a good thing; git is not doing what I want. But by reducing the false positives from the first case, I would start to actually pay attention to the warning more.

Show 5 quoted lines
> Jonathan Nieder (4):
>   add: make pathless 'add [-u|-A]' warning a file-global function
>   add: make warn_pathless_add() a no-op after first call
>   add -u: only show pathless 'add -u' warning when changes exist outside cwd
>   add -A: only show pathless 'add -A' warning when changes exist outside cwd

I don't see anything obviously wrong with the patches themselves. I wonder if we would want to change the warning to be more explicit that yes, there really were files that were impacted by this. And possibly even list them.

I suspect I would not even mind that becoming the final behavior. I.e., going to:

  $ cd subdir && git add -u
  warning: Using 'git add -u' without a pathspec operates only on the
  current subdirectory. Updates from the following files were NOT
  staged:
    file1
    file2
    other-subdir/file3

now, and then eventually converting the warning into a fatal error (and demanding that the user use ":/" or "." as appropriate).

But in the long run, I guess defaulting to ":/" will be more convenient, so there is no point in complaining about the ambiguity forever. And in that case, since the warning is just a placeholder, I don't know that it's worth much effort to make it fancier.

-Peff
Previous: Jonathan NiederNext: Junio C Hamano
Message 40 of 51 in “"git add -u/-A" from future”
  1. 0/2 "git add -u/-A" from futureJunio C Hamano, Mar 8, 2013
  2. 1/2 require pathspec for "git add -u/-A"Junio C Hamano, Mar 8, 2013
  3. Matthieu MoyMar 10, 2013
  4. Junio C HamanoMar 11, 2013
  5. Matthieu MoyMar 11, 2013
  6. 1/2 add: update pathless 'add [-u|-A]' warning to reflect change of planMatthieu Moy, Mar 11, 2013
  7. 2/2 add: add a newline at the end of pathless 'add [-u|-A]' warningMatthieu Moy, Mar 11, 2013
  8. Junio C HamanoMar 11, 2013
  9. Matthieu MoyApr 2, 2013
  10. Junio C HamanoApr 2, 2013
  11. Matthieu MoyApr 2, 2013
  12. Jeff KingMar 12, 2013
  13. Matthieu MoyMar 12, 2013
  14. Jeff KingMar 13, 2013
  15. 1/2 t2200: check that "add -u" limits itself to subdirectoryJeff King, Mar 13, 2013
  16. Matthieu MoyMar 13, 2013
  17. Junio C HamanoMar 13, 2013
  18. Jeff KingMar 14, 2013
  19. 2/2 add: respect add.updateroot config optionJeff King, Mar 13, 2013
  20. Matthieu MoyMar 13, 2013
  21. Jeff KingMar 13, 2013
  22. Junio C HamanoMar 13, 2013
  23. Matthieu MoyMar 14, 2013
  24. 0/4 make pathless 'add [-u|-A]' warning less noisyJonathan Nieder, Mar 19, 2013
  25. 1/4 add: make pathless 'add [-u|-A]' warning a file-global functionJonathan Nieder, Mar 19, 2013
  26. 2/4 add: make warn_pathless_add() a no-op after first callJonathan Nieder, Mar 19, 2013
  27. 3/4 add -u: only show pathless 'add -u' warning when changes exist outside cwdJonathan Nieder, Mar 19, 2013
  28. Junio C HamanoMar 19, 2013
  29. Jonathan NiederMar 19, 2013
  30. Junio C HamanoMar 19, 2013
  31. Jonathan NiederMar 19, 2013
  32. Duy NguyenMar 19, 2013
  33. Jonathan NiederMar 19, 2013
  34. Matthieu MoyMar 19, 2013
  35. Junio C HamanoMar 19, 2013
  36. Jonathan NiederMar 19, 2013
  37. Junio C HamanoMar 19, 2013
  38. Jonathan NiederMar 19, 2013
  39. 4/4 add -A: only show pathless 'add -A' warning when changes exist outside cwdJonathan Nieder, Mar 19, 2013
  40. Jeff KingMar 19, 2013
  41. 2/2 git add: -u/-A now affects the entire working treeJunio C Hamano, Mar 8, 2013
  42. 0/6 make pathless 'add [-u|-A]' warning less noisyJonathan Nieder, Mar 19, 2013
  43. 1/6 t2200: check that "add -u" limits itself to subdirectoryJonathan Nieder, Mar 19, 2013
  44. 2/6 add: make pathless 'add [-u|-A]' warning a file-global functionJonathan Nieder, Mar 19, 2013
  45. 3/6 add: make warn_pathless_add() a no-op after first callJonathan Nieder, Mar 19, 2013
  46. 4/6 add -u: only show pathless 'add -u' warning when changes exist outside cwdJonathan Nieder, Mar 19, 2013
  47. Jeff KingMar 20, 2013
  48. Junio C HamanoMar 20, 2013
  49. 5/6 add -A: only show pathless 'add -A' warning when changes exist outside cwdJonathan Nieder, Mar 19, 2013
  50. Junio C HamanoMar 20, 2013
  51. 6/6 git add: -u/-A now affects the entire working treeJonathan Nieder, Mar 19, 2013

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.