Hi Michael, Thanks for your help. I had modified a few files and then done a 'git commit -a'. It was only after this that I did a status and realised that I had switched to a different branch (and forgotten). Unfortunately the branch I switched to tracks a remote that is my stable release so I'm a bit precious about it. If I forget again and push it, I'm in trouble :-) Yes, I have done that before!! Howard 2009/9/4 Michael J Gruber <git@xxxxxxxxxxxxxxxxxxxx>: > Howard Miller venit, vidit, dixit 04.09.2009 17:54: >> I commited to the wrong branch and I can't figure out what to do. To >> make matters worse I then did 'git reset HEAD^' which has made things >> much worse. It didn't remove the commit and now I can't change >> branches. I'm utterly confused. Any help much appreciated! >> >> Moral - use git status liberally and read it carefully before doing >> anything. A 'git undo" command would be great is someone is feeling >> generous :-) > > Whatever happens, don't panic ;) > > Let's say "geesh" is the branch on which you committed by mistake, and > which you have reset. > > git reflog geesh > > which show you what has happened to that branch lately. In particular, > it will list the "lost" commit. (Most probably it is the same as geesh@{1}.) > > git tag sigh sha1ofthatcommit > > will assign the tag "sigh", so that it won't get lost by doing "git gc" > or such. Now you can lean back! > > Next step is committing "sigh" to the right branch. Depends on how you > arrived at that commit. Did you commit the complete tree you wanted, or > did you apply a change to geesh which you rather had wanted applied to > some other branch? > > Michael > -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html