3 回答

TA貢獻(xiàn)1834條經(jīng)驗(yàn) 獲得超8個(gè)贊
如果要在當(dāng)前HEAD上提交具有不同提交的確切狀態(tài),撤消所有中間提交,則可以使用reset創(chuàng)建索引的正確狀態(tài)來(lái)進(jìn)行提交。
# Reset the index and working tree to the desired tree
# Ensure you have no uncommitted changes that you want to keep
git reset --hard 56e05fced
# Move the branch pointer back to the previous HEAD
git reset --soft HEAD@{1}
git commit -m "Revert to 56e05fced"

TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超4個(gè)贊
什么混帳復(fù)歸確實(shí)是一個(gè)指定的提交創(chuàng)建一個(gè)承諾,撤消在給定提交所做的更改,創(chuàng)建提交其反向(當(dāng)然,倒數(shù))。因此
git revert <SHA-1>
應(yīng)該而且確實(shí)有效。
如果你想回退到指定的提交,并且你可以這樣做,因?yàn)檫@段歷史尚未發(fā)布,你需要使用git-reset,而不是git-revert:
git reset --hard <SHA-1>
(注意,--hard
這將使您丟失工作目錄中的任何未提交的更改)。
補(bǔ)充說(shuō)明
順便說(shuō)一下,也許它并不明顯,但在文檔說(shuō)<commit>
或<commit-ish>
(或<object>
)的任何地方,你都可以提交一個(gè)SHA-1標(biāo)識(shí)符(完整或縮短)。

TA貢獻(xiàn)1844條經(jīng)驗(yàn) 獲得超8個(gè)贊
它恢復(fù)了所述提交,即添加與其相反的提交。如果要簽出早期版本,請(qǐng)執(zhí)行以下操作:
git checkout 56e05fced214c44a37759efa2dfc25a65d8ae98d
- 3 回答
- 0 關(guān)注
- 530 瀏覽
添加回答
舉報(bào)