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

Re: [RFC] git rm -u

From
Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Date
Jan 20, 2013, 11:32 UTC
Message-ID
<vpq622s9jk1.fsf@grenoble-inp.fr>
In-Reply-To
<20130119214921.GE4009@elie.Belkin>
Jonathan Nieder <jrnieder@gmail.com> writes:
Show 9 quoted lines
> Eric James Michael Ritz wrote:
>
>> When I came to my senses and realized that does not work I began to
>> wonder if `git rm -u` should exist.  If any deleted, tracked files are
>> not part of the index to commit then `git rm -u` would add that change
>> to the index.
>
> I like it.  If you have time to write such a patch, I'll be happy to
> read it.

I can leave with "git add -u", but a "git rm -u" that would only look at deletions, and not stage existing files changes would make sense.

One thing to be careful about is what to do when the command is called from a subdirectory. In general, Git commands use this convention:

* git foo   => tree-wide command
* git foo . => restrict to current directory

"git add -u" is one of the only exceptions (with "git grep"). I consider this as a bug, and think this should be changed. This has been discussed several times here, but no one took the time to actually do the change (changing is easy, but having a correct migration plan wrt backward compatibility is not).

Implementing "git rm -u" as a tree-wide command would create a discrepancy with "git add -u". Implementing it as a "current directory" command would make the migration harder if we eventually try to change "git add -u". Perhaps "git rm -u" should be forbidden from a subdirectory (with an error message pointing to "git rm -u :/" and "git rm -u ."), waiting for a possible "git add -u" change.

-- 
Matthieu Moy
http://www-verimag.imag.fr/~moy/
Previous: Eric James Michael RitzNext: Junio C Hamano
Message 13 of 53 in “[RFC] git rm -u”
  1. Eric James Michael RitzJan 19, 2013
  2. Tomas CarneckyJan 19, 2013
  3. Antoine PelisseJan 19, 2013
  4. Eric James Michael RitzJan 19, 2013
  5. Junio C HamanoFeb 25, 2013
  6. Antoine PelisseFeb 25, 2013
  7. Matthieu MoyFeb 25, 2013
  8. Antoine PelisseFeb 25, 2013
  9. Matthieu MoyFeb 25, 2013
  10. Junio C HamanoFeb 25, 2013
  11. Jonathan NiederJan 19, 2013
  12. Eric James Michael RitzJan 19, 2013
  13. Matthieu MoyJan 20, 2013
  14. Junio C HamanoJan 20, 2013
  15. Junio C HamanoJan 20, 2013
  16. Martin von ZweigbergkJan 20, 2013
  17. Matthieu MoyJan 21, 2013
  18. Junio C HamanoJan 20, 2013
  19. Eric James Michael RitzJan 20, 2013
  20. Piotr KrukowieckiJan 21, 2013
  21. Matthieu MoyJan 21, 2013
  22. Junio C HamanoJan 21, 2013
  23. Junio C HamanoJan 21, 2013
  24. Matthieu MoyJan 21, 2013
  25. Junio C HamanoJan 21, 2013
  26. Piotr KrukowieckiJan 21, 2013
  27. add: warn when -u or -A is used without filepatternMatthieu Moy, Jan 21, 2013
  28. Robin RosenbergJan 21, 2013
  29. Matthieu MoyJan 21, 2013
  30. Robin RosenbergJan 21, 2013
  31. Junio C HamanoJan 21, 2013
  32. Piotr KrukowieckiJan 21, 2013
  33. Matthieu MoyJan 21, 2013
  34. Matthieu MoyJan 21, 2013
  35. Jonathan NiederJan 21, 2013
  36. Matthieu MoyJan 22, 2013
  37. add: warn when -u or -A is used without filepatternMatthieu Moy, Jan 25, 2013
  38. Junio C HamanoJan 25, 2013
  39. Matthieu MoyJan 27, 2013
  40. Junio C HamanoJan 27, 2013
  41. Matthieu MoyJan 28, 2013
  42. add: warn when -u or -A is used without filepatternMatthieu Moy, Jan 28, 2013
  43. Jonathan NiederJan 28, 2013
  44. Michael J GruberJan 28, 2013
  45. Junio C HamanoJan 28, 2013
  46. Matthieu MoyJan 28, 2013
  47. Junio C HamanoJan 28, 2013
  48. Junio C HamanoFeb 14, 2013
  49. Junio C HamanoFeb 14, 2013
  50. Matthieu MoyFeb 15, 2013
  51. Jonathan NiederJan 27, 2013
  52. Duy NguyenJan 22, 2013
  53. Junio C HamanoJan 22, 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.