首页 > 解决方案 > 基线代码更改时 git 合并的正确方法

问题描述

我们有一些遗留代码,我正试图将它们引入更现代的范例。基本上,他们从上游团队获取代码,从中剥离所有 git 信息,将文件复制到一个空的 repo 中,然后提交。然后在上面添加自己的代码。

现在,我需要将此代码移至新基线。(我的另一个目标是在上游存储库的克隆中为此代码创建实际分支,但这是另一个讨论。)

当添加原始代码时,我从主分支创建了一个分支,在其上复制了新基线,然后提交了它。然后我做了一个 git merge master。那是正确的方法吗?我注意到在其中一个文件中,我似乎遗漏了 master 已经完成的工作,这让我想知道我是否也遗漏了其他地方的更改。

这是我尝试过的基本想法:

A -- B -- [ Baseline code "C" ] -- D -- E -- F ... HEAD
                               \
                                \
                                 -- [ New baseline "Z" ]  <-- Did a git merge on this branch to bring in the changes on master

在 git log 中,我看到提交 A - F,然后是我的基线“Z”,然后是来自 master 的合并提交。

标签: git

解决方案


推荐阅读