From: Lars Hjemli Date: Mon, 19 Nov 2007 16:45:45 GMT Subject: Re: Git in a Nutshell guide Message-ID: <8c5c35580711190845s71a4880ek4ab28170d277e0e6@mail.gmail.com> In-Reply-To: <1195477504.8093.15.camel@localhost> On Nov 19, 2007 2:05 PM, Jonas Juselius wrote: > All comments > and suggestions are welcome! Very nice introduction, but I have a couple of comments. In "Specifying revisions" you say that '^' and '~' are equal, but that is not true. ^ is used to select the first parent of a commit, ^2 selects the second parent of a merge commit (and ^3 selects the third parent of an octopus merge), while the '~' is used to go back any number of generations, following the first parents of each commit (~ selects the first parent, ~2 selects the first grand-parent etc). Also, I think you might scare users away from 'git reset': git reset resets the branch to a specified state invisibly and without possibility to go back. Ever. Your call. That's not true, since any "modern" git has reflogs enabled. If you do 'git reset --hard HEAD^^^' and then realize it was a mistake you can just 'git reset --hard HEAD@{1}' -- larsh