按照公司的 git flow 流,
言归正传,我第六步忘了做,再次从 develop 检出新特性分支开发完毕后,想合并 master,就会多出上一批的 commit 来。WHY??
原来是 MR 提交时,默认勾选了 squash commit,代表需要舍弃 develop 其他 commit ,并把所有提交内容做为一个新的 commit,从而 develop 和 master 的 commit 不一致。
怎么办??
合并完后第六步记得做,在 develop 上 rebase 了 master,HEAD 指针 和 origin/develop 指针才会与 origin/master 指针保持一致。
commit 834d1121937c245346f38455f6cbc4fb812dd255 (HEAD -> develop, origin/master, origin/develop, origin/HEAD, master)
Merge: c637b91 f198310
Author: 陈通塔 <chentongta@souche.com>
Date: Thu Dec 5 15:41:19 2019 +0800
Merge branch 'develop' into 'master'
chore: 打印一些东西
See merge request msgcenter/msgcenter-sms!147
commit f1983106e89d14c268e9e204fa56fd5c1538696e
Author: 陈通塔 <chentongta@souche.com>
Date: Thu Dec 5 15:40:36 2019 +0800
chore: 打印一些东西
但其实,如果你不是用 squash commit 的话,其实 master 上有合并自 develop 的 commit 链条,就不会碰到本文的问题。