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

Re: RFE: git rm

From
Daniel Barkalow <barkalow@iabervon.org>
Date
Oct 24, 2005, 21:38 UTC
Message-ID
<Pine.LNX.4.64.0510241725370.25300@iabervon.org>
In-Reply-To
<7virvmodhz.fsf@assigned-by-dhcp.cox.net>
On Mon, 24 Oct 2005, Junio C Hamano wrote:
Show 42 quoted lines
> Jeff Garzik <jgarzik@pobox.com> writes:
> 
> > It would be nice to say "git rm files..." and have two operations occur:
> >
> > * list of files is passed to rm(1)
> > * list of files is passed to git-update-index --remove
> 
> This is not a big problem *if* your index always matches the
> HEAD tree (i.e. no intermediate git-update-index in between
> commits) --- you can just say "rm -f files..." at the point of
> removal, continue your work, and either pass these files from
> the command line, or -a flag when running 'git commit'.
> 
> Running git-update-index in between commits is a valid thing to
> do, and it helps reducing the clutter when viewing 'git diff' to
> see what your changes look like since your last update-index.
> The workflow would go like this:
> 
>     1$ git checkout
>     ... work work work
> 
>     ... what have I done so far?
>     2$ git diff
>     ... the intermediate result looks OK, so record what we have
>     ... done so far...
>     3$ git-update-index --add --remove files...
> 
>     ... work work work
>     ... go back to step 2 as many times as needed.
> 
>     ... now what is the sum of changes since the last commit?
>     4$ git diff HEAD
> 
>     ... everything looks OK.  record the last bits and commit.
>     5$ git-update-index --add --remove files...
>     6$ git commit
> 
> Previously Linus stated that his index almost always matches the
> HEAD tree, and I personally do not do intermediate update-index
> ever myself, but I am curious how other people use git [*1*].
> If some of you run update-index in between commits, "git rm
> files..."  would make a lot of sense.

I often do "git add something" when I happen to think of it, not necessarily right before committing, which means that I have these files changed in my index while working. I may quit this, however, now that git status lists the ones I missed.

Incidentally, the new git status entry for --others really ought to say something different from "Ignored files", like "Exist but not tracked", since it doesn't include the contents of .gitignore, which you'd expect to be "Ignored". (And, of course, any files it lists are hardly being ignored.)

	-Daniel
*This .sig left intentionally blank*
Previous: Junio C HamanoNext: Junio C Hamano
Message 4 of 6 in “RFE: git rm”
  1. Jeff GarzikOct 24, 2005
  2. H. Peter AnvinOct 24, 2005
  3. Junio C HamanoOct 24, 2005
  4. Daniel BarkalowOct 24, 2005
  5. Junio C HamanoOct 24, 2005
  6. Daniel BarkalowOct 24, 2005

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.