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

Re: (beginner) git rm

From
Junio C Hamano <gitster@pobox.com>
Date
Jan 28, 2009, 21:29 UTC
Message-ID
<7vab9bm85b.fsf@gitster.siamese.dyndns.org>
In-Reply-To
<1233175322729-2234796.post@n2.nabble.com>
Zabre <427@free.fr> writes:
Show 23 quoted lines
> Björn Steinbrink wrote:
>> 
>> The "git checkout -- d.txt" is also a valid command, but that restores
>> the file from the index.
>> 
>> git checkout -- paths
>> 	==> Copy "paths" from the index to the working tree
>> 
>> git checkout <tree-ish> -- paths
>> 	==> Copy "paths" from the tree-ish to the index and working tree
>> 
>> So, for "rm d.txt", a plain "git checkout -- d.txt" would also do the
>> trick, as d.txt is still in the index. But your "git rm d.txt" also
>> removed the file from the index, and thus that checkout does nothing.
>> But "git checkout HEAD -- d.txt" works, as it gets the file from HEAD
>> and puts it into the index and working tree.
>
> This is enlightening, thank you very much!
> (I knew I would love git more and more)
>
> Oh just one (probably stupid) thing : <tree-ish> does represent a directory
> being the root of a tree of folders (which has been added to the index),
> does it?
Yeah, it typically is a commit object.

Björn said "Copy", but the operation really is like checking out a book from a library and "checkout" is a good word for it. "I do not like what I have in my work tree, and I'd like to replace it with a fresh one taken out of the index (or, out of that commit)".

Previous: ZabreNext: Björn Steinbrink
Message 13 of 16 in “(beginner) git rm”
  1. ZabreJan 28, 2009
  2. Peter KreftingJan 28, 2009
  3. ZabreJan 28, 2009
  4. Tomas CarneckyJan 28, 2009
  5. ZabreJan 28, 2009
  6. Tomas CarneckyJan 28, 2009
  7. Theodore TsoJan 28, 2009
  8. ZabreJan 28, 2009
  9. ZabreJan 28, 2009
  10. Björn SteinbrinkJan 28, 2009
  11. ZabreJan 28, 2009
  12. ZabreJan 28, 2009
  13. Junio C HamanoJan 28, 2009
  14. Björn SteinbrinkJan 28, 2009
  15. Junio C HamanoJan 28, 2009
  16. Björn SteinbrinkJan 29, 2009

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.