与" p4 sync"的奇怪行为完全混淆。试图运行以下命令
注意:工作区
中不存在文件名p4 sync // depot / filename ---表明文件是最新的
p4有// depot / filename ---显示不在客户端上的文件
思考可能是perforce服务器认为该文件存在于其客户端的数据库中。所以使用
删除了文件p4 sync // depot / filename#none ---显示文件最新
p4 sync // depot / filename #head ---显示文件最新
最后我说
p4有// depot / filename ---显示不在客户端上的文件
然后我做了
p4 sync -f // depot / filename #head ---显示// depot / filename - 删除为c:/ workspace / filename
最后
p4有// depot / filename ---显示文件不在客户端。
知道这里可能出现什么问题?
答案 0 :(得分:7)
运行“p4 files // depot / filename”,您将看到它是一个已删除的文件。
如果您的客户端上存在旧版本的文件(即“p4 has”表示存在某些内容),则“p4 sync”会将其删除。由于您的客户端上已存在该文件,因此您已经“更新”了。
运行“p4 sync -f”会强制执行此问题,并尝试删除本地文件,即使has表中没有任何内容也存在。 (如果您在其位置添加了一个全新的文件并且还没有完成“p4 add”,那么该文件现在永远丢失了 - 使用“p4 sync -f”时要小心!)