2009-05-01 36 views
16

結合DVCS我被迫使用Visual源安全2005年的工作。我想將它與DVCS結合起來,這樣我就可以在本地簽入文件,而不會中斷我的同事,如果有錯誤或者它沒有編譯。與Visual源安全

在我嘗試用水銀,它的工作原理,但會導致一些奇怪的問題。也就是說,它認爲其他人已經檢出了我已經簽出的文件。

這裏是我的,我應該如何管理它的想法:

  1. 禁用自動結賬。
  2. 工作在本地水銀
  3. 當我準備把我的變化...
    1. 克隆我的Mercurial庫。
    2. 更新我的Visual源安全存儲庫
    3. 拉和合並使用水銀兩個儲存。
    4. 檢查一切到Visual Source Safe中。

這聽起來是合理的?我總是聽到有關VSS的壞消息,這是否只是要我直接看到這些問題?

+0

問題應當加以修改,以更準確的一個:「如何使一個很好的版本控制系統吸」 – 2009-05-01 16:03:41

+0

我處於相同的位置。但是你所描述的過程聽起來比使用vss本身更糟糕:-) – 2009-05-01 16:10:32

回答

13

WBlasko

我發現了同樣的問題。我想在需要時更改文件併合並它們,而不是等待其他開發人員解鎖它。爲我工作的解決方案是:

1)獲取最新版本的VSS項目(Ⅰ劃歸VSS所有VSS項目):

c:\vss\projectA 

2A)與水銀

cd vss\projectA 
C:\vss\projectA>hg init 
初始化

2B)克隆項目的地方,它可以隨意

hg clone vss\projectA myProjects\projectA 

3更改)獲取最新的變化s從VSS副本中跳過(如果您來自1和2,則跳過)

C:\myProjects\projectA>hg pull 
C:\myProjects\projectA>hg update 
(solve conflicts if any) 

4)隨意使用克隆版本。後來,把你的工作到VSS副本:

C:\myProjects\projectA>hg push 
(don't run hg update yet, wait for VSS latestes version) 

5)現在,執行所有文件的收銀臺VSS項目

6)運行上的VSS項目合併你「汞更新」到最新的VSS變化。

C:\vss\projectA>hg update 
(if there are conflicts, resolve them) 

7)提交更改

C:\vss\projectA>hg commit 

8)執行VSS籤(釋放鎖到其他人) 返回到步驟3。重複步驟3-8永遠然後.. 。;-)

通過這種方式,您可以使用良好的版本控制系統,同時仍然可以與傳統項目「交談」。你也將可以享受到: 一)沒有問題,鎖定的文件 b)您可以與其他人知道如何使用汞 c)作出分支機構共享資源庫等

只是要小心,首先更新/解決衝突,測試,然後進行VSS籤

乾杯, 路易斯