如何用 Git 合并两个代码库

How to merge two code bases with Git

我被跟踪了。我在 Github 上有一个更大的项目 (A)。然后我复制了一份完整的代码,在 Bitbucket 上创建了一个 Git repo (B)(因为它可以是私有的)。

我对 B 进行了一些不应该 public 的更改,因此保留在 Bitbucket 存储库中。但是社区在 A 上提取了一些新代码。

如何将A上的新修改合并到B上?

Repo A (Github):    R1a => R2a => R3a => R4a => R5a => R6a
                            ↓                           ↓?
Repo B (Bitbucket):        R2a => R3b ===============> R4b

因此,在版本 R2a 中,我将代码库复制到 Bitbucket。然后我在 Bitbucket 上开发了 R3b。在此期间及之后,Github 开发了版本 R3a、R4a、R5a 和 R6a。如何合并那些 changes/versions 两个 R3b 以创建合并的 R4b?

我知道,由于存在冲突,这不会是一个自动过程。但是如何从A独占合并到B呢?

Git让你add remotes。因此,例如,在 B 的克隆中,

git remote add A https://url-to-A

然后,您可以git获取A并将您想要的分支与

合并
git merge A/branch 

换句话说,您正在为不同的遥控器手动执行 git 默认情况下在 origin/your-branch

上执行的操作