2011-08-25 59 views
0

我使用龜汞和我的存儲庫包含subrepo subrepo。該subrepo非常大,需要很長時間才能更新。如何跳過龜汞

有沒有辦法來更新我的資料庫,但跳過更新subrepo?

回答

0

下面是我用一招:

  • 有另一個文件夾中的subrepo的本地存儲庫。我從我的同事那裏複製了這個文件夾。

  • 安裝新的回購協議。拉取更改(不要更新)。克隆本地子報到新回購的適當位置。現在更新並tortoiseHg只會獲取該子文件中的差異。

  • 在這一點上,你subrepo指向本地副本。一旦一切都更新到最新。將subrepo指向遠程服務器中的一個。

當然,如果您或某人已經有subrepo的副本這僅適用。

3

update命令旨在總是在整個存儲庫進行操作。沒有選擇排除子索引。

但是如果你正確地組織你的倉庫,你應該能夠達到你所需要的。

我希望你遇到這個問題,因爲你的項目的回購協議是這樣的:

parent/ 
    .hgsub 
    .hgsubstate 
    subrepo/ 
    your_project_file.py 

通過上述結構,update被迫您的控制下,對既要操作的文件(在parent),也你的subrepo。一個更好的(更靈活)的方法來組織你的資料庫是這樣的:

build_repo/  # top-level repo that is empty except for .hgsub 
    .hgsub 
    .hgsubstate 
    your_repo/ # your code as a subrepo 
    subrepo/  # the library code as a subrepo 

通過這種結構,可以無需更新到你所依賴的庫更新your_repo