2015-02-10 59 views
1

是否可以將倉庫的同一部分映射到兩個(或更多)不同的地方?將Perforce庫的相同部分映射到多個位置?

//depot/branches/foo/... //my_client/foo/... 
//depot/branches/foo/... //my_client/foo1/... 

我想這樣做的原因是爲了能夠使在同一文件(一個或多個)同時無關和不重疊的變化。

(如果他們不同文件,我可以簡單地在一個單一的映射使用過程中的不同變化列表。)

+0

爲什麼不只是做一個分支?這就是我對同一個文件同時進行不相關且不重疊的更改的方式。 – 2015-02-11 00:03:02

+0

我_could_,但它增加了必須整合到/從單獨的分支的額外步驟。 – 2015-02-11 15:16:59

回答

4

一個給定的客戶視圖只能有一個給定的一個在特定時間的軟件倉庫文件。也就是說,這裏有三種可能的方式來同時對同一個文件進行兩種不同的更改:

1)您的兩個更改是否需要同時存在於您的客戶機上?如果沒有,當你想暫停第一次修改時,「擱置」它,恢復你的本地文件,然後進行第二次修改。您可以擁有與單個客戶端關聯的任意數量的「已擱置」版本的文件(位於不同的更改列表中),但實際上只有「打開」文件存在於工作區中。

2)你實際上是否需要在你的機器上同時存在兩個文件,但不一定需要同時運行Perforce命令(比如它們之間的合併更改,它們之間的差異,提交它們都是一個單獨的更改,等等)?如果是這樣,有多個客戶端規格是一個不錯的選擇。確保它們具有不同的根(因此不同的本地文件系統位置),並使用P4CONFIG文件,以便您自動使用與您的工作目錄匹配的客戶端規範。 3)你是否需要這兩個文件,並希望能夠同時對它們進行不同的變更版本的設置,區分這兩個變體,併合並它們之間的變化?如果是這樣,你想創建一個新的分支。請執行以下操作:

p4 integ //depot/branches/foo/... //depot/branches/foo1/... 
p4 submit 

現在在庫和工作區中有兩組文件;您可以對它們進行獨立更改,稍後使用「p4 integ」根據需要合併它們之間的更改(在任一方向)。

+0

我認爲選項2是最簡單的。 – 2015-02-11 15:17:54

相關問題