我在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分支中的所有文件,它给出了相同的上述错误。有人可以帮我解决这里发生的错误吗?
谢谢!
答案 0 :(得分:3)
运行p4 integrate
时,集成的目标应映射到perforce client workspace
,这是错误指示的内容:
provide a branch view that maps this file, or use -Di to disregard move/deletes
使用p4 client
或p4v
,将以下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/...
----------------------------------------------------------------------------------------------------^
这可能会解决它。如果没有,请确认目标位于客户端规范映射中。