我想知道是否有一种方法可以告诉performce只同步丢失的(从给定的工作区视图)文件,而不覆盖正确存在的文件,即在正常的"获取最新修订版"(p4 sync
)未获取所有文件后避免使用p4 sync -f
。
试试这个:
p4 diff -sd | p4 -x- sync -f
这是一个链式命令,它将在工作区中查找不是#head修订版(p4 diff -sd
)的所有已知文件,然后仅在上强制同步这些文件(p4 -x- sync -f
)。注意-x-
的使用,其指示第二命令从标准输入(STDIN)读取。
如果p4 sync
没有得到文件,则性能服务器认为您已经拥有了它。
p4 sync <missing file>#0
使服务器同步到丢失的文件,然后p4 sync <missing file>
获取新的副本。
或者,p4 sync -f <missing tree>/...
将只同步丢失的树。
无法避免全局-f
选项。
如果正常同步没有得到文件的最新版本,则Perforce认为您已经拥有了它。您是否已将文件状态设置为可在Perforce外部写入?
如果你知道哪些文件/文件夹受到影响,你可以只在这些文件/文件夹上使用-f
,这会更快,但这意味着你可能会错过一些东西。