Subject: Re: Restore a single file in the index back to HEAD

From: Andreas Ericsson <[email-masked]>
Date: Fri, 27 Oct 2006 10:08:46 +0200

Shawn Pearce wrote:
> Andy Parkins <[email-masked]> wrote:
>> However, it led me to wonder what the inverse of git-update-index is.
> 
> git-update-index  :-)
> 
> You can use something like:
> 
>     git ls-tree HEAD oops/file1 | git update-index --index-info 
> 
> to restore the index state of oops/file1.
> 
> 
> Which leads us to the always interesting, fun and exciting:
> 
>     git ls-tree -r HEAD | git update-index --index-info 
> 
> which will undo everything except 'git add' from the index, as
> ls-tree -r is listing everything in the last commit.
> 

... and also shows The Power of the Pipe, which Daniel@google was 
missing in recent versions of git. ;-)

Btw, this is most definitely not a documented thing and requires a bit 
of core git knowledge, so perhaps the "shell-scripts were good for 
hackers to learn what to pipe where" really *is* a very important point.

-- 
Andreas Ericsson                   [email-masked]
OP5 AB                             www.op5.se