2010-09-08 58 views
1

我有一個存儲庫,我將調用'subset',它是從另一個存儲庫克隆的,我將稱之爲'full'。我使用'hg rm'刪除了子集中的許多文件。我現在需要將更改保留在完整的子集中,但我不想恢復任何我刪除的文件。如果我進行拉動後再進行合併,則合併將交互式地詢問我是否每次刪除的文件都已更改,如果我想要使用已更改的文件或將其刪除。有什麼辦法可以自動刪除所有刪除的文件,並保存自己的重複性壓力傷害?如何在執行與Mercurial的合併時自動保留刪除?

作爲一個說明,一次性修復(如使用完整的hg convert?)將不會飛,因爲完整的和子集的存儲庫正在積極的工作,至少現在。

+0

轉換不是一次性修復。請參閱下面有關其迭代性質的答案。 – 2010-09-09 02:09:51

回答

1

最簡單的方法是將修改過的文件上的刪除重新綁定。只要你沒有重新命名很多文件,這將工作得很好。

有關更多詳細信息,請參閱this答案。

+0

那麼如果我在我的子集克隆上做這件事,然後將它推到其他人已修改的「已發佈」版本的子集上,會發生什麼?有人擔心,他們最終不得不手動重新綁定他們的克隆,或者做我想要避免的合併。 – 2010-09-08 23:30:57

1

其實,hg convert仍然是正確的做法。以迭代方式轉換作品,所以它只會引入新的更改集。將--filemap與一堆排除行一起使用,只需使用相同的源克隆和目標克隆重新運行convert命令,並且可以在需要合併時迭代過濾。

這是一種非常常見的模式,例如,如果將整個項目的一小部分發布給更廣泛的受衆羣體。

相關問題