我已将开发分支合并到主分支,然后将原点推送到远程。因此,有两个相同的更改历史记录,并且合并的历史记录与开发分支中的最后一个提交相同。 合并和提交的主分支总是比开发分支提前1,为什么?最后,如果我将master上的新提交历史合并到develop,那么两个分支将是相同的,并且不会生成新的提交历史记录。
合并到主分支 https://github.com/uptown1919/cmake/commit/3691a71d83ca3335e6236cdb07cb629fd8c749f1
开发分支的最后一次更改 https://github.com/uptown1919/cmake/commit/faac63cf7f754561e2aa46d62dba4e9c232d9996
答案 0 :(得分:0)
查看您的回购历史记录,看起来您已将--no-ff
选项传递给git merge
,或者您已设置配置,以便默认情况下禁用快进。执行此操作时,执行合并时,始终创建新提交。将此与合并时只有您正在合并到的分支更改的事实相结合,您将留下指向新提交的分支以及您从的分支>坚持现有的承诺。
请注意,即使您不使用--no-ff
选项,也会有很多情况需要合并,并且无法进行快进。在这些情况下,您还将使目标和源分支指向不同的提交。