我只希望将仓库中的差异同步到我的工作区中。 我不想重新同步所有已经匹配的源文件。
我现在可以看到与此命令的区别:
p4 diff -sd //depot/source/...
但是当尝试使用此命令将软件仓库差异同步到我的本地工作空间时:
p4 diff -sd //depot/source/... | p4 -x - sync -f | p4 //depot/source/...
我在终端收到此消息:
“-必须引用客户”
注意:在执行上述所有命令之前,我使用以下方式设置了客户端
p4 set P4CLIENT=MYWORKSPACE
答案 0 :(得分:3)
要仅同步自上次同步以来服务器上已更新的文件,请执行以下操作:
p4 sync
p4 sync
命令的默认行为是仅同步更改的文件;您无需执行任何特殊的旋转就可以实现这一目标。
服务器对服务器和工作空间之间的区别的概念取决于其上次同步时向您发送的内容的记录。如果您以不受支持的方式弄乱了工作区(即,您修改了Perforce设为只读的文件,而没有“打开”它们进行修改),则这些记录将无效。您可以通过两种方式之一来解决此问题,具体取决于您要进行的修改:
p4 reconcile
将打开您修改的文件,使您可以选择revert
进行修改或submit
进行修改。
p4 clean
将简单地覆盖您的修改,类似于p4 sync -f
,但是p4 clean
会进行比较以找出您修改了哪些文件,并且只会重新同步这些文件。