将分支合并到GIT中的中间提交中

时间:2013-12-06 18:15:50

标签: git git-branch git-merge gitk

假设您有一个单独的分支,它不断获取用于跟踪数据库转储的新提交,并且它是第一次提交master的分支。

我知道我可以合并到主人的HEAD,通常的程序。

相反,我想将分支历史合并到一个中间提交中,以便将gitk中的并行分支行保持在最低限度。

所以我试着:

git checkout -b temp_master_branch [Intermediate master commit SHA1]
git merge db_dump_branch
git checkout master

然而,当我在gitk中进行可视化时,现在有3个长行,一个用于master,另一个用于dump分支,最后是另一个用于这个新的temp_branch。

我该怎么做?我希望它有道理。

感谢。

1 个答案:

答案 0 :(得分:2)

合并始终会创建新提交(快速转发除外),因此如果不创建新分支或重写现有分支,则无法合并到旧提交中。如果您想在主分支中进行数据库转储,则需要将其合并到主分支的顶端并处理gitk的外观。

攻击长寿并行分支的其他选项:

  • 让数据库转储程序直接提交给master。
  • 除非更新非常频繁,否则请让转储器为每个转储创建一个短期的新分支。