Github 将git hub存储库与Performce depot合并

Github 将git hub存储库与Performce depot合并,github,perforce,git-p4,Github,Perforce,Git P4,我有项目A。项目A在Performce和github(商业决策)中。它们都不同步。我发现我可以使用git-p4工具将git更改提交给perforce。问题是它的第一条指令说: git p4克隆//仓库/路径/项目 此命令将在git hub中创建新的repo。我不想那样。我希望我现有的perforce depot连接到退出的github repo,然后将文件从github同步到perforce。可能吗 No.gitp4基本上只是性能的包装。它读取对Git repo的更改并发出适当的Perforce

我有项目A。项目A在Performce和github(商业决策)中。它们都不同步。我发现我可以使用git-p4工具将git更改提交给perforce。问题是它的第一条指令说:

git p4克隆//仓库/路径/项目


此命令将在git hub中创建新的repo。我不想那样。我希望我现有的perforce depot连接到退出的github repo,然后将文件从github同步到perforce。可能吗

No.
gitp4
基本上只是性能的包装。它读取对Git repo的更改并发出适当的Perforce命令来提交这些更改(反之亦然——它读取对Perforce签出的更改并发出适当的Git命令来相应地更新Git repo)。因此,您需要有一个Perforce签出和一个本地Git回购,可以与Perforce签出进行对话。

基本上,对于同一个项目,您有两个不同的历史记录,因此您需要找到一些方法来协调它们

git-p4可以从Perforce同步(创建一个新的git存储库),然后您可以添加一个指向github的新远程站点,并从那里同步分支

然而,这无助于解决合并历史记录的问题

您可以:

  • 使用Perforce,重写github历史记录
  • 使用Github历史记录,让您的Performce管理员/Performce(公司)重写您的Performce历史记录
  • 2可能(在政治上)是不可能的。从技术上讲可能是不可能的。Perforce旨在防止历史被篡改


    1将断开从github存储库克隆的任何人。

    您可能想看看Git Fusion,它是Git和Perforce之间的桥梁:

    这篇KB文章给出了一个示例,说明了您可能希望如何处理Perforce和公共Git回购中的项目:


    希望这有帮助

    谢谢你,米帕迪。但是如果我对Git p4和Git都有一个本地的Git回购协议,它会起作用吗?@user2452057:是的。git-p4只是一些Perforce命令的薄包装,允许您将git与Perforce一起使用,因此您可以在使用git-p4克隆的同一个repo上使用所有git工具。