2013-08-19 35 views
0

在Git中,我可以使用add將文件標記爲合併。 在SVN中,我可以使用resolve來將文件標記爲合併。可以perforce命令行標記文件合併?

但是在perforce中,我找不到執行此項工作的命令。有誰知道perforce是否有這樣的命令?

更新: Sorrry爲我對我的問題的糟糕解釋。 我試圖爲perforce開發一個SCC包裝器,它可以在其環境中合併文件。但合併後(不是由perforce),我怎麼能告訴perforce這個文件已經合併,並刪除衝突標誌?

+0

之前,我張貼的問題,我已經讀過的Perforce命令行的文檔。我真正的意思是:我試圖爲perforce開發一個SCC包裝器,它可以在其環境中合併文件。但合併後(不是由perforce),我怎麼能告訴perforce這個文件被合併? –

回答

2

首先,您必須將一個文件(源文件)集成到另一個文件(目標文件)中。

p4 integrate //depot1/mydir/myfile //depot2/mydir/myfile 

要提交生成的更改列表,必須先解決。

  1. 如果您不想更改目標,請解析接受目標(忽略源) 文件。
  2. 如果您想要用源文件覆蓋目標,請解析 接受源文件。
  3. 如果要合併這兩個文件,請接受合併。

對於這些命令是:

  1. 接受目標:p4 resolve -ay //depot2/mydir/myfile
  2. 接受來源:p4 resolve -at //depot2/mydir/myfile
  3. 接受合併:p4 resolve -am //depot2/mydir/myfile

最後,提交您的更改:

p4 submit # for default changelist 
p4 submit -c 12345 # submit changelist # 12345 

(有額外的解決方案是互動的,這裏概述:http://www.perforce.com/perforce/doc.current/manuals/cmdref/resolve.html#1040665

+0

解決命令需要更多的以下操作來實際合併文件。有沒有辦法簡單地告訴perforce這個文件已經合併,沒有更多的行動? –

+0

聽起來你只需要用「接受目標」(-ay標誌)來解決。在解析接受目標之後,將工作區文件與目標文件進行比較,它們應該相同。提交更改列表後,Perforce會將這些文件識別爲合併,並且目標文件未被修改。 –

+0

哦,是的,這就是我需要的!謝謝回答! –

0

可能您正在尋找'p4 resolve -am'。

如果您提供更多信息,這將有助於他人給您建議。

+0

我已經嘗試過。它會抱怨這樣的: HistoryVersion.txt - 合併//user/HistoryVersion.txt#3 DIFF塊:0您+ 0 +他們的兩個0 + 1相沖突 //user/HistoryVersion.txt - 決心跳過。 –

相關問題