2017-03-29 44 views
0

現在我的項目中還有幾百行代碼,分散在六個班級,我不希望逐一跟蹤它們。是否可以撤銷意外的「hg unshelve」?

+1

你的意思是你在一個髒兮兮的工作樹上做了一個'unshelve',使它更髒? (大概,如果不是,你可以簡單地重新'擱置'。) – torek

+0

@torek是的,這就是我所做的。在此期間我整理了一下 - 花了我幾個小時 - 但我仍然想知道它是否能以更簡單的方式解決。 – Mihai

+0

據我所知,沒有。 – torek

回答

2

沒有,但這是可以避免的問題

而不是做hg shelve的,做hg commit --secret。這將在存儲庫中創建一個「真實」提交,當您不再需要時可以重新綁定或剝離(hg strip)。它也可以使用hg histedithg fold(後者需要Evolve擴展名,在撰寫本文時是實驗性的,而前者是交互式的並且可能很難編寫腳本)摺疊到另一個更改集中。

--secret標誌確保在變更集上手動運行hg phase -d REV之前,變更集不會被意外推送。

+0

或者您可以使用MQ,並根據需要只是'qpush' /'qpop'所做的更改。 –

+0

MQ幾乎不太相當棄用。我不會推薦它用於新項目。 – Kevin

+0

我不知道。什麼取代了它? –