我们公司中有一个项目的git存储库。
我们的客户还有一个git存储库,我们必须将生产代码推送到客户存储库中。
当前,两个git存储库没有相同的历史记录。
我现在尝试连接两个存储库,并将客户添加为本地存储库的远程用户。
我的目标是发布版本后,可以轻松地将当前代码推送到客户存储库。因此,客户存储库仅应显示一次对最新版本所做的所有更改。
要将我们的代码分支与客户分支连接起来,我试图将客户分支拉到我们的分支中,反之亦然。但最后,git始终希望将完整的历史记录提交给客户。如何在不共享完整提交历史记录的情况下连接分支?这两个分支目前具有相同的内容。
连接完成后,我可以使用rebase或squash组合多个分支。但是,当我尝试使用第一个提交执行此操作时,此操作将以无休止的方式解决所有已完成的大量提交的冲突。
有关提交历史记录的更多说明。 目标应该是这样的:
我们的存储库:
客户资料库:
目前,客户存储库和我们的存储库没有共同的连接/历史记录。现在,我想将它们连接起来。
答案 0 :(得分:0)
如果我的理解正确,您想将您的回购与不相关的回购同步。 git的全部内容是一个版本控制系统,这意味着记录每个提交。摆脱历史记录(我知道)的唯一方法是删除您的.git
文件并开始一个新的存储库。然后他们只会看到您的初始提交。
我还要补充一点,每个人都会犯错误,并且承认这一点我不会害羞。如果您的git历史记录中有一个文件包含敏感内容,您可以尝试BFG repo cleaner,那么它会产生奇迹。