合并 2 个不同的 git 个内容几乎完全相同的存储库
Merge 2 different git repositories with nearly exact content
现在我有两个不同的存储库。
Repo 1:只有 "core" 和一些 "sys" 模块。
回购 2:还有 "core"、"sys" 以及许多其他内容。
问题是第二个 repo 没有跟踪或上传核心或 sys 模块的任何更改,我在那里做了很多更改。在我进行这些更改之前,Core 和 sys 的阶段与 core 和 sys 的阶段不同。
现在我不想将回购 2 中的 "core" 和 "sys" 与回购 1 同步,而且我没有任何解决方案。
快速回答:git远程添加、获取、合并。
长一跟。
即使存储库完全不同(没有共同的祖先),您也可以将 2 个存储库的内容合二为一。
在一个存储库(比如存储库 A)上使用 git remote add
添加第二个存储库(比如存储库 B)。
仍然在第一个存储库 (A) 中使用 git fetch repository_B
获取第二个存储库的内容。
你得到的是一个包含两者内容的存储库。
您现在可以合并它们。假设您在 master
,您可以将其他存储库 master 与 git merge repository_B/master
合并。
现在您获得了一个新的提交,其中包含您可以推送的所有内容。
如果您有很多冲突,最好尝试使用 git diff
使 2 个内容更相似,并逐步更新一个或另一个以减少差异。如果目录路径不同,这可能涉及 git mv
。
现在我有两个不同的存储库。 Repo 1:只有 "core" 和一些 "sys" 模块。 回购 2:还有 "core"、"sys" 以及许多其他内容。 问题是第二个 repo 没有跟踪或上传核心或 sys 模块的任何更改,我在那里做了很多更改。在我进行这些更改之前,Core 和 sys 的阶段与 core 和 sys 的阶段不同。
现在我不想将回购 2 中的 "core" 和 "sys" 与回购 1 同步,而且我没有任何解决方案。
快速回答:git远程添加、获取、合并。
长一跟。
即使存储库完全不同(没有共同的祖先),您也可以将 2 个存储库的内容合二为一。
在一个存储库(比如存储库 A)上使用 git remote add
添加第二个存储库(比如存储库 B)。
仍然在第一个存储库 (A) 中使用 git fetch repository_B
获取第二个存储库的内容。
你得到的是一个包含两者内容的存储库。
您现在可以合并它们。假设您在 master
,您可以将其他存储库 master 与 git merge repository_B/master
合并。
现在您获得了一个新的提交,其中包含您可以推送的所有内容。
如果您有很多冲突,最好尝试使用 git diff
使 2 个内容更相似,并逐步更新一个或另一个以减少差异。如果目录路径不同,这可能涉及 git mv
。