git - 合并 2 个不同的 git 存储库,内容几乎完全相同
问题描述
现在我有两个不同的存储库。回购 1:只有“核心”和一些“系统”模块。Repo 2:还有“core”、“sys”和很多其他的东西。问题是第二个 repo 没有跟踪或上传核心或 sys 模块的任何更改,我在那里做了很多更改。在我进行这些更改之前,Core 和 sys 与 core 和 sys 没有相同的阶段。
现在我不想将 repo 2 中的“core”和“sys”与 repo 1 同步,而且我不知道有什么轻微的解决方案。
解决方案
快速回答:git remote add、fetch、merge。
长一个跟随。即使存储库完全不同(没有共同的祖先),您也可以将 2 个存储库的内容合二为一。在一个存储库(例如存储库 A)git remote add
上,用于添加第二个存储库(例如存储库 B)。仍然在第一个存储库 (A) 中获取第二个存储库的内容git fetch repository_B
。你得到的是一个包含两者内容的存储库。您现在可以合并它们。假设你在master
,你可以将其他存储库 master 与git merge repository_B/master
. 现在你得到了一个新的提交,其中包含你可以推送的所有内容。
如果您有很多冲突,最好尝试使这两个内容更相似,git diff
并逐步更新其中一个以减少差异。例如git mv
,如果目录路径不同,这可能涉及。
推荐阅读
- pandas - Pandas 按一个热编码列分组
- python - 如何在 Pyventory 中重用自动计算的属性?
- angular - 通过Angular 2中的打字稿文件中的方法清除所有输入int html文件
- r - 如何在 r 中不使用 cumprod 的情况下累积乘法向量?
- floating-point - 如果这里的输出是“不相等”,那么为什么使用双精度而不是浮点数不能给出相同的输出?
- javascript - 使用 Typescript 在 React useEffect() 中对数组进行排序
- c# - Unity UI 对象不可见
- angularjs - 如何在Tomcat 9的rewrite.config文件中为多个角度项目添加多个重写规则
- apollo - Apollo typepolicies 如何读取 Query 的兄弟字段?
- javascript - 输入字段未从下拉选择中填充