我剛剛使用了Git編程。問題案例如下:我已經提交更改之後,如何返回到以前的位置
「我剛剛在主分支上提交了我的更改,並在其上生成了一個補丁。 實際上,我只想保存補丁並返回到提交之前的位置? 我怎樣才能做到這一點?」
感謝
我剛剛使用了Git編程。問題案例如下:我已經提交更改之後,如何返回到以前的位置
「我剛剛在主分支上提交了我的更改,並在其上生成了一個補丁。 實際上,我只想保存補丁並返回到提交之前的位置? 我怎樣才能做到這一點?」
感謝
你跑git log
,你會發現你想要去提交SHA1,並運行
git checkout <sha1>
如果你要開始從這個角度commiting創建一個新的分支在這一點上與
git checkout -b <branchname>
或者,你可以移動master
這個SHA1與
git br -f master <sha1>; git checkout master
您找回您的提交SHA,即運行git show
,看你想要的,那麼你從它的分支:
git checkout -b yournewbranch commitSHA
是啊,我想'git的結帳不建議'因爲你在DETACHED_HEAD模式下,並不是很容易退出它(特別是對於不熟悉Git的人) –
Vince
我可以這樣做:「git reset --hard HEAD @ {1}」,因爲我只想回滾到先前在同一分支上提交。 –
HEAD @ {1}'不完全是以前的提交,它是HEAD的最後一個位置,所以在你的情況下,如果提交完全是你所做的最後一個操作,它就會工作。正確的命令是'git reset --hard HEAD ^',因爲它會將指針向後移動一次。 – jolivier