
On 7 Mar 2012, at 16:10, Philippe Vaucher wrote:
Right, and there are plethora of ways to mess up local copies with git. While it might be possible to get back in a sane state it is extremely hard. As said, especially with the features everything advertises here, it gets really hard to maintain something like a mainline git repository.
Maybe it has already been said, but I disagree. It's extremely simple to get back to a sane state if you fuck up your repo with git: simply type "git reflog", find the line showing the commit where everything was still correct, then "git reset --hard SHA1_OF_CORRECT_COMMIT" and you're back to where you started.
This feature removes the pressure of _having_ to do your merges correctly the first time like you have to in svn, which makes the use of topic branches and friends a pleasure and not a pain.
That is an extremely useful git hint. I am sure I will not be alone in having never seen it. Even looking briefly at the documentation for reflog doesn't make it easy to understand that is what I wanted. This is the biggest problem with git -- there are a hundred tiny things to learn which are hard to find when you do not know what you are looking for. Chris