From: Björn Steinbrink Date: Wed, 28 Jan 2009 20:17:27 GMT Subject: Re: (beginner) git rm Message-ID: <20090128201727.GD7503@atjola.homenet> In-Reply-To: <1233166992184-2233892.post@n2.nabble.com> On 2009.01.28 10:23:12 -0800, Zabre wrote: > Tomas Carnecky wrote: > > > > Oops, sorry. git checkout HEAD -- d.txt > > You have to tell which version of d.txt you want. In your case the > > version in HEAD. > > Thank you for this precision, it makes me understand this command better. > (Sorry for my late answer I've been unable to check my computer for a few > hours) 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 -- 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. Björn