2015-12-22 67 views
2

我有一個主流和一個子虛擬流(比如父級爲Main的ProjVirt)。我從ProjVirt流創建了一個發佈流,說rel1.0 - 這樣所做的更改可以從rel1.0遷移到ProjVirt。Perforce:將發佈流合併/集成到父虛擬流

即使圖形視圖顯示從rel1.0到ProjVirt的綠色合併箭頭(表示可以合併),但我無法將rel1.0的更改合併到父虛擬流。我不斷收到以下警告:

 
p4 merge -c 324065 -S //depot/rel1.0 -P //depot/ProjVirt -s //depot/Main/myProj/... 
    no files opened 
    1 warning reported 
    No target file(s) in both client and branch view. 

我在做什麼錯?

回答

1

我不知道,P4合併根據this documentation

p4 merge -c 324065 -S //depot/rel1.0將從母公司合併子(這是默認的方向)採取-s參數。

如果你想在其他方向上合併,你必須使用反向語法-r

p4 merge -c 324065 -r -S //depot/rel1.0 

我不認爲你有什麼需要爲目標,因爲P4可以推斷出父流自動從您的流配置。

我認爲最初的錯誤消息是由於changelist 324065在父流中沒有文件,而是rel1.0中的文件。而且,由於您正在從父級合併,所以p4找不到要合併的文件。

+1

偉大的建議!另外,確保在發出'p4 merge'之前切換到目標流(例如'p4 client -s -S // depot/Main')。 –

+0

感謝您的回覆。但是命令行是由P4V客戶端生成的。我切換到目標流,右鍵單擊父文件夾並選擇「合併/集成到」,並在控制檯中出現錯誤。這是否意味着我的P4V客戶端不是最新的?該版本說'2015年2月18日'。 – Raghu

+0

@raghu我的鏈接指向2012版,所以我的信息可能已過期 –