2011-11-17 28 views
3

(在Windows上)目前,我們正在使用Subversion之間的文件,但我們檢查切換到水銀。一個問題是,我們在我們的存儲庫中使用外部存儲來在多個子項目之間共享單個文件。如果編輯了這樣的文件的一個版本,那麼這些更改會傳播到我們的結帳中的其他版本。有沒有辦法在Mercurial中實現同樣的功能,即多個位置的同一個文件?在Unix上,這可能使用某種鏈接。但是Windows怎麼樣?分享我們的源代碼控制多個位置

+0

爲什麼不用於存儲這些文件創建一個公共回購?在Windows中,你必須把它們放在一個普通的位置,並配置子項目來訪問那個 – prusswan

回答

3

水銀有Subrepository特點這是一個有點像SVN的外部。

善變的特點是比我的觀點外更復雜,但你可以用它達到同樣的目標,這是更靈活。

你甚至可以使用Subversion或Git倉庫,如水銀subrepo,所以這取決於你現在在做什麼,你可以重用你的實際的外部回購沒有任何變化。

一切鏈接的文檔中很好的解釋有一個良好的開端與此functionnality!

BTW,符號鏈接也存在於Windows上:NTFS Symbolic link

+0

謝謝你的回答。我已閱讀關於subrepository功能,但不幸的是,它似乎只適用於文件夾而不適用於單個文件。而且我們的項目結構太複雜,無法將所有可能在不同位置共享的文件放在一起。但是subrepo特性至少可以派上用場來處理我們的一些依賴。 我不知道NTFS符號鏈接(僅約路口)。如果Mercurial能夠處理它們,我想這會解決這個特殊的問題。 – fschoenm

+0

@fschoenm AFAIK,Mercurial處理NTFS符號鏈接。 – krtek

+0

我試過NTFS符號鏈接(和硬鏈接),但Mercurial似乎也不支持。相反,當我對原始存檔進行克隆時,我只獲取了副本而不是鏈接。 – fschoenm