2010-10-26 133 views
8

我犯了一個錯誤,並刪除了一個文件。我想回到我以前的提交! 我試圖與恢復和退出與沒有運氣...如何回滾到提交併推送版本的mercurial?

任何提示?

編輯:我做正是這一點:

 
hg forget file 
hg commit -m "Blah" 
hg push 

這最後推的版本號是17。

現在文件不再被跟蹤。我想回到修訂版本15(不是先前的內部版本,但是有一個額外的退步),因爲我不想繼續在文件的第16版上工作。

回答

10

實測值的溶液:

 
hg revert file -r15 //(reverts file to revision 15). 
+0

這應該做的:)。我剛剛看到您的編輯問題 – pyfunc 2010-10-26 04:06:25

+0

您是否嘗試過hg更新文件-r15? – pyfunc 2010-10-26 04:07:10

+0

是的,得到了​​這個: abort:請只指定一個修訂版 – 2010-10-26 04:13:45

0

如果您已經承諾那麼您可以更新到以前的版本。如果該文件受版本控制,則不會消失。那是什麼版本控制。

hg update -r "what is previous rev" 

如果您已刪除文件,並沒有承諾,後來乾脆做了更新,它會恢復的文件。

hg update 

[編輯:基於編輯的問題]

hg revert file -r 15 
hg update file -r 15 
+0

修改已被提交併在文件中用「R」推送,導致缺少跟蹤。但我不想推回位於硬盤中的實際文件,因爲我不想將其推入服務器。所以,我必須回到以前的完整版本。我不知道我是否足夠清楚。謝謝你的幫助。 – 2010-10-26 03:04:06

+0

@Gabriel A. Zorrilla:給我們更詳細的問題。目前尚不十分清楚。即使文件標記爲'R',以前的版本應該有它,你應該能夠恢復到它。 – pyfunc 2010-10-26 03:19:50

+0

已編輯原創帖子。看一看。 – 2010-10-26 03:29:19

0

嘗試拉版本15和hg pull -r,然後添加該文件。

相關問題