我想知道是否有办法告诉perforce仅同步缺少的(来自给定的工作空间视图)文件,而不是正确覆盖现有的,即避免使用{{的方法1}}正常的“获取最新版本”(p4 sync -f
)之后没有全部完成。
答案 0 :(得分:7)
试试这个:
p4 diff -sd | p4 -x- sync -f
这是一个链式命令,可以找到工作区中不是#head修订版(p4 diff -sd
)的所有已知文件,然后强制同步仅限这些文件(p4 -x- sync -f
)。请注意使用-x-
指示第二个命令从标准输入(STDIN)读取。
答案 1 :(得分:1)
如果p4 sync
没有获取该文件,则perforce服务器认为您已经拥有该文件。
p4 sync <missing file>#0
使服务器同步到丢失的文件,然后p4 sync <missing file>
获取新副本。
或者,p4 sync -f <missing tree>/...
只会同步丢失的树。
答案 2 :(得分:1)
无法避免全局-f
选项。
如果正常同步没有获得该文件的最新版本,那么Perforce认为您已经拥有它。您是否已将文件状态设置为Perforce外部可写?
如果您知道哪些文件/文件夹受到影响,您可以在这些文件/文件夹上使用-f
,这样会更快,但这意味着您可能会遗漏某些内容。