存在用于从Perforce到具有完整历史记录的Plastic SCM的简单迁移的工具/脚本吗?
或perforce => git => plasticscm?
答案 0 :(得分:3)
是的,有一种方法可以双向进行,没有Git跳转。它使用“ cm sync p4 ”命令完成,我们称之为 P4Sync 。
首先,您需要使用https://www.plasticscm.com/download/5.4.16.779上提供的“完整安装程序(UDT + P4Sync)”安装程序
该安装程序包含P4 Sync命令,其格式为:
cm synchronize br:/main@MyRepoName@plastic-server:8087 p4 p4Server:1666 //myDepot/path --user=p4user --pwd=p4password
您可以使用“ - excluded = excludeFilePath ”参数来定位包含P4库路径规则的配置文件,以便在迁移过程中将其忽略。
让我举个例子,如果你想同步“// depot / stream”P4 depot路径,但你不想迁移“// depot / stream / subdirtoexclude”子目录,那么配置文件必须有写入“/ subdirtoexclude”是为了忽略它,因为你可以看到它是根同步路径的相对路径。
我建议你使用一个可选参数,它是“ - tmpwkpath ”,用它来指定下载p4 depot文件的temporal p4工作空间的自定义路径,我通常使用:“ - tmpwkpath = c:\ p4wks”,它为长路径名提供了足够的空间,并且避免过度填充windows tmp目录(这将影响命令性能)。别忘了使用它。
同步的工作原理是什么?非常简单,它会从P4中缺少的转售商进行搜索,然后将其导入到塑料SCM中,反过来,它将搜索缺少的塑料SCM变更集进入P4,如果找到新内容,它将被同步。相同的命令用于双向同步数据,您不需要更改命令从P4拉或从Plastic拉,一切都在同一时间完成。但请注意,如果在P4路径和Plastic / main分支上进行并行更改,则需要首先提取P4更改,使用合并操作解决冲突(合并将自动创建的子分支)和然后将更改推回P4。
首次运行命令时,给定库路径的所有P4历史记录都将迁移到空的Plastic SCM存储库中。第一个p4更改列表通常是最难的,因为最初可能会添加大量资产。
sync命令定期更新有关正在进行的操作,您可以启用“cm.log.conf”调试日志文件(https://www.plastics...scm-part-i.html)以启用完整的命令执行日志。
如果您有任何疑问,请发送电子邮件至support@codicesoftware.com。