Perforce 如何在两台不同的服务器之间移动Performce仓库,以便复制修订历史记录,但不复制用户信息和工作区?
我需要将仓库从一台Perforce服务器复制到另一台服务器。文件修订历史记录需要保持完整,但无法将用户信息和工作区信息复制到新服务器 我尝试了标准的检查点创建和恢复过程,但如果两台服务器上都存在同名的用户或工作区,则源服务器将覆盖目标服务器上的此信息。如果这些用户帐户和工作区没有完全相同的详细信息,这将非常糟糕 此类操作的目标是允许两个独立的、断开连接的组查看具有修订历史记录的版本化源树。更新将是单向的,一组正在开发,一组正在查看。每个小组的网络都是完全封闭的,没有任何形式的外部连接 如果有任何想法,我都会感激的,我已经绞尽脑汁想了一段时间了 编辑:Perforce 如何在两台不同的服务器之间移动Performce仓库,以便复制修订历史记录,但不复制用户信息和工作区?,perforce,Perforce,我需要将仓库从一台Perforce服务器复制到另一台服务器。文件修订历史记录需要保持完整,但无法将用户信息和工作区信息复制到新服务器 我尝试了标准的检查点创建和恢复过程,但如果两台服务器上都存在同名的用户或工作区,则源服务器将覆盖目标服务器上的此信息。如果这些用户帐户和工作区没有完全相同的详细信息,这将非常糟糕 此类操作的目标是允许两个独立的、断开连接的组查看具有修订历史记录的版本化源树。更新将是单向的,一组正在开发,一组正在查看。每个小组的网络都是完全封闭的,没有任何形式的外部连接 如果有任何
最终,我的解决方案是在源服务器所在的同一台机器上安装一个中间Perforce服务器。使用它,我可以执行从源服务器到中间服务器的标准备份/恢复,然后在从中间服务器备份到最终目标服务器之前删除中间服务器中所有不需要的元数据。非常复杂,但它完成了任务,并且可以在Windows Power Shell中以编程方式完成。有几种方法,但我认为这是一种艰难的方法
你也可以看看远程仓库。基本上,您可以在目标服务器上创建一个新仓库,并将其指向源服务器上的仓库。如果在两台服务器之间有快速连接,则此操作有效。保护由目标服务器处理,以确定谁有权访问该新仓库。可以将源服务器设置为将其以只读方式共享给目标服务器。这里有一些信息
只需确保在一段缓慢的时间内对其进行测试,因为它会降低目标服务器的速度。我在美国东海岸的两个偏远的地方试过,结果都可以接受,但不太有用。如果两个服务器都在同一个建筑中,那就好了。你考虑迁移到<代码> Git < /C> >吗?详细解释了具体需要。我看不出建议使用不同的源代码管理工具如何解决这个问题。#2绝对是一个很好的资源,但我在复制服务器(只读或其他)时面临的问题是,用户和工作区信息是不相交的,需要保持这样。IE在此过程中,不应在源上重新创建来自目标的用户配置文件。此外,如果有两个相似的命名用户或工作区,则驻留在目标上的用户配置文件的详细信息不能覆盖源上的用户配置文件。