On 30 Apr 2012, Darrell Anderson verbalised:
We use 'git reset' to move back in time. I
don't know whether a git
reset deletes files or only moves to where HEAD is being pointed.
This depends.
"git reset --soft" just moves HEAD. The index is unaffected, so
everything that has changed between your current position and the point
you reset to is now listed as a 'change to be committed' in 'git
status'.
"git reset --mixed" (the default) moves HEAD and wipes out the index,
but leaves the working tree unaffected.
"git reset --hard" wipes out the working tree, the index, everything. It
doesn't touch untracked files, though.
And, the most extreme, "git clean" wipes out untracked files (possibly
including ignored ones and whole unknown directories, see the manpage).
This is a right terminological mess, I must admit.
--
NULL && (void)