我想要一个不需要强制同步的快速解决方案,它将指定的目录置于其原始存储库状态。
- 相同的文件可能会从磁盘中删除
- 可以从磁盘添加相同的文件
- 磁盘上的某些文件可能被修改
- 某些文件可能会被标记为删除、添加或修改
我想要的只是确保在运行命令后我不会有这些。
p4 -f sync
不是一个选择,我需要一个更快的解决方案,最大限度地减少网络使用。
以防万一有人问起,perforce proxy 不在讨论范围之内。
我确实知道部分解决方案是:
p4 diff -sd -se //clientspec/dir/... | p4 -x - revert
问题是,这不会删除添加到上述路径中但不在 perforce 中的文件 - 我想从磁盘中删除的文件。
另外,我需要一个多平台或跨平台解决方案 - 它必须能够在 Windows、OS X 和 Linux 上运行。
Perforce 在 2014.1 中添加了一个新命令“p4 clean”,它通过将工作区重置为其 #have 状态来完全满足您的要求:
- 不在 Perforce 中的新文件将被删除
- 在 Perforce 控制之外修改的文件将被重置
- 在 Perforce 控制之外删除的文件将被恢复
该命令是“p4 reconcile -w”的别名,并使用文件的哈希和来确定它们在工作区中的状态。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)