我的p4客户端版本是P4/NTX64/2018.1/1705517。
我注意到我的工作区中的一些文件被意外删除。我已同步,但即便如此,文件也没有出现。
然后,我运行 p4 have
命令并发现它包含丢失的文件,因此 p4 不会在同步中包含这些文件。
当然,我可以使用 -f
标志发出 p4sync
命令,但我的工作空间相当大,因此需要很长时间。
然后,我运行了 flush
命令,即使带有 -f
标志,认为它会更正我的 have
列表以反射(reflect)我在文件系统上实际拥有的内容我的工作区,但事实并非如此。我做错了什么?
最佳答案
p4lush
更改 have
列表以匹配您告诉它匹配的任何内容(如果没有参数,则 #head
是默认值) 。如果这不是您的工作区实际包含的内容,则具有列表现在与工作区不同步,并且将来的 p4sync
命令可能会跳过一堆文件(就像您现在看到的一样) .
您需要的命令是p4 clean
,它会同步您的工作区以匹配您的拥有列表。 (如果您对未打开的文件进行了更改,包括未使用 p4 add
打开的"new"文件,这将不可挽回地破坏它们。小心!)
如果您想打开与您的列表不匹配的文件,请使用 p4 reconcile
。 (您可以使用 p4 revert
来放弃更改,或者使用 p4 Submit
来永久保留它们。)
关于perforce - 为什么 p4lush 不更新我的拥有列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54869044/