我想知道是否有人对如何在p4v中执行以下任务有任何建议(我对P4V命令不太熟悉,如果这是我缺少的一些基本命令,请道歉。)
目前我的工作区设置和数据已同步到我的root 例如C:\数据\
我从两台不同的Windows机器访问此工作区。 (数据位于c:\ Data
的两台机器上现在,我需要移动数据存储在其中一台机器上而不是另一台机器上的位置(机器A:c:\数据,机器B:D:\ Data \
这是否可行,而无需再次从服务器同步所有数据(存在很多和带宽限制)。
我最初的想法是创建指向另一个根的另一个工作区,但我不知道如何让这个新工作区在这个位置获取数据文件。
非常感谢任何帮助 提前致谢
答案 0 :(得分:2)
我不知道通过P4V做到这一点的方法,但可以使用命令行客户端完成。这是程序。
在机器B上移动文件并创建新工作区(不执行“全部更新”)后,您可以pass the -k switch to the sync command让服务器知道您拥有的文件。
从我链接的网页:
保留现有的工作区文件;更新有列表而不更新 客户端工作区。仅在需要更新时才使用p4 sync -k 有列表来匹配客户端工作区的实际状态。
命令行帮助可以这样说:
-k标志更新服务器元数据而不同步文件。它是 旨在使您能够确保服务器正确反映 工作区中的文件状态,同时避免大数据 传递。警告:错误的更新可能导致服务器 错误地反映了工作区的状态。
仅供参考:p4 flush
是p4 sync -k
答案 1 :(得分:0)
您还可以查看工作区中的AltRoots
字段。您可以在c:\data
处拥有一个根,在d:\data
处拥有另一个根。正如raven所说,因为数据存在于两个独立的磁盘上,所以你需要确保两台机器上的数据保持同步,尽管我认为你已经在两台机器上运行了
任何原因你不能每台机器只有一个工作区吗?