无法使用集成在P4中创建新分支

时间:2013-03-11 19:30:47

标签: perforce perforce-integrate

我在P4的分行

//depot/MyDemoInfo/trunk/Server/My_Service 

&安培;在My_Service下,我的整个源代码都存在。

现在,当我尝试从上面的主干分支创建一个新分支时,它给了我错误:

我正在尝试创建一个新的发布分支,如下所示:

//depot/MyDemoInfo/1.0/Server/My_Service 

所以,我在我的客户端规范中添加了以下命令:

p4 integrate //depot/MyDemoInfo/trunk/Server/My_Service/... //depot/MyDemoInfo/1.0/Server/My_Service/...

它给出了以下错误:

//depot/MyDemoInfo/1.0/Server/My_Service//abc.txt - can't integrate from //depot/MyDemoInfo/trunk/Server/My_Service/abc.txt#1 (moved from //depot/MyDemoInfo/trunk/Server/My_Service/abc.txt; provide a branch view that maps this file, or use -Di to disregard move/deletes)

对于我的trunk分支中的所有文件,它给出了相同的上述错误。有人可以帮我解决这里发生的错误吗?

谢谢!

2 个答案:

答案 0 :(得分:3)

运行p4 integrate时,集成的目标应映射到perforce client workspace,这是错误指示的内容:

provide a branch view that maps this file, or use -Di to disregard move/deletes

使用p4 clientp4v,将以下perforce depot //depot/MyDemoInfo/1.0/Server/My_Service映射到您的客户端工作区,到您计算机上的某个目录中说:/myp4workspace/MyDemoInfo/1.0/Server/My_Service

然后这样做:

cd /myp4workspace/MyDemoInfo/1.0/Server/My_Service
p4 integrate //depot/MyDemoInfo/trunk/Server/My_Service/... ...

# This is optional, but a regular workflow to make sure you resolve all the conflicts
# Display any conflicts (there shouldn't be any since this is the first time you're integrating into this location)
p4 resolve -n ... 

# If there are any, use p4 resolve -as ... , p4 resolve -am ... , and then p4 resolve ...

# Submit your changes after verifying it is correct
p4 submit ...

您可能需要注意的另一件事是,使用p4 integrate选项运行-t -d,以便保留文件类型,并引入任何已删除的文件更改(尽管这两个选项)在你的情况下可能不是真的需要,但在指定它们时没有错误。)

此外,您可以运行p4 where以确认您在进行任何集成之前位于正确的perforce仓库位置。

答案 1 :(得分:1)

integrate命令中缺少斜杠。目标/目标应在...之前包含斜杠。

试试这个:

p4 integrate //depot/MyDemoInfo/trunk/Server/My_Service/... //depot/MyDemoInfo/1.0/Server/My_Service/...
----------------------------------------------------------------------------------------------------^

这可能会解决它。如果没有,请确认目标位于客户端规范映射中。