将一个仓库的提交合并到另一个仓库

时间:2020-10-27 10:41:57

标签: git github version-control

我知道这是一个不幸的设置,但是我有两个Repos:

1。) 回购A 是基础回购,这是一个用作其他项目基础的项目。

2。)回购B ,我从中分叉了 回购A 并进行了修改。

同时, 回购A 获得了一些新功能和更新。

现在,我想更新 Repo B ,以接管 Repo A 的新更改和更新,但保留我的修改。

我现在可以使用 Repo A 的最新版本从 Repo B 创建一个新分支。然后,我可以手动复制并粘贴对它的修改。

但这当然是对错误敏感的,并且需要时间。是否有一种方法可以首先识别我的提交和修改,我对 Repo B 进行了更改,然后让Git根据 Repo A 将更改合并到我新创建的分支中? / p>

我猜樱桃采摘有点乏味,因为它会经历所有提交,即使它们不是最新的。所以也许有一个差异,它显示了 Repo B Repo A 到我分叉之前的差异,并有可能合并该差异?

1 个答案:

答案 0 :(得分:2)

每个本地存储库可以有多个远程存储库。我要做的是转到本地回购B,然后将远程回购A添加为其远程存储库之一。这样做将使本地存储库B可以从远程存储库A或远程存储库B中提取更改。

git remote add <name> <clone url>
ex: git remote add RepoA https...

然后,您的本地存储库B可以从远程存储库A中提取更改。但是,您可以指定远程分支而不是源。在这种情况下,它是RepoA。

git pull <name>/<branch name>
ex: git pull RepoA/master