2017-02-27 69 views
0

我有一個文件,其中幾個單獨的塊在一個變更集中發生了變化。 (這不是最新的變更集。)建議如何恢復Mercurial中的特定更改?

現在我需要在這些更改之前將這些塊中的一個還原爲修訂狀態。推薦的程序是什麼? Mercurial/TortoiseHg是否提供任何幫助,或者我應該手動將這個塊替換爲舊內容?

回答

1

如果你想而復一個完整的變更,也可能是沒有手工作業使用hg backout完成。從它的幫助:

汞柱退出[選項] ... [-r] REV

早期變更的逆轉作用

準備與REV百廢待興的效果了新的變更在當前 工作目錄。如果沒有遇到衝突,它將立即承諾 。

如果REV是工作目錄的父級,則自動提交此新變更集 (除非指定了--no-commit)。

注意: 'hg backout'不能用於修復不需要或不正確的 合併。

但是因爲你只需要一個單獨的大塊恢復,您可以使用hg backout,然後你需要使用--interactive標誌的承諾,讓您可以挑選合適的大塊(縣)承諾:

hg commit --message "Revert some stuff" --interactive 

最後,將工作目錄恢復到現在未修改的狀態 - 您不想更改剩餘的快照