2012-08-28 43 views

回答

2

你跑git log,你會發現你想要去提交SHA1,並運行

git checkout <sha1> 

如果你要開始從這個角度commiting創建一個新的分支在這一點上與

git checkout -b <branchname> 

或者,你可以移動master這個SHA1與

git br -f master <sha1>; git checkout master 
+0

是啊,我想'git的結帳不建議'因爲你在DETACHED_HEAD模式下,並不是很容易退出它(特別是對於不熟悉Git的人) – Vince

+0

我可以這樣做:「git reset --hard HEAD @ {1}」,因爲我只想回滾到先前在同一分支上提交。 –

+1

HEAD @ {1}'不完全是以前的提交,它是HEAD的最後一個位置,所以在你的情況下,如果提交完全是你所做的最後一個操作,它就會工作。正確的命令是'git reset --hard HEAD ^',因爲它會將指針向後移動一次。 – jolivier

0

您找回您的提交SHA,即運行git show,看你想要的,那麼你從它的分支:

git checkout -b yournewbranch commitSHA

相關問題