Re: checkout vs reset
From: Sitaram Chamarty <hidden>
Date: 2016-06-15 22:46:17
On 2009-02-26, Jay Soffian [off-list ref] wrote:
On Thu, Feb 26, 2009 at 2:08 AM, Jay Soffian [off-list ref] wrote:quoted
Is there any different between the following two commands? git reset <commit> -- <paths>... git checkout <commit> -- <paths>... As far as I can tell from the man pages, they are equivalent. To wit: both update the index and working copy for the given paths to the state that they were in in <commit>.Doh, answering my own question. reset only touches the index, not the working copy. checkout updates both.
However, if the <commit> doesn't even _have_ the <path> in
question, it leaves the index alone (doesn't remove it, for
instance):
Using HEAD as the <commit> in question for this example:
echo hi > abc # new file, untracked so far
git add abc
git status # it's staged
git reset HEAD -- abc
git status # untracked
# now with checkout
git add abc
git status # staged
git checkout HEAD -- abc
git status # still staged