所以 GitHub有能力为 PR 合并 + 压缩提交。
dev
我们从->遵循 PR'ing 代码的过程master
。
以前,我一直只是“合并” PR,但这会生成一个新的提交,上面写着:“ Merge Pull Request #1 from foo/bar
”。:( 呜呜……
所以我想我可以试试Squash Commits
GH的新东西。这创建了一个新的提交,我之前的所有提交都被压缩了。好的,到目前为止一切顺利。
然后我回到我的dev
分支(在我的开发人员机器上).. 拉下upstream/master
(这是 PR 和 squash-merge 发生的地方))现在它向我的本地历史添加了另一个提交!它没有去“哦..哇。你太离谱了..让我们同步”。它只是做了一个合并。
因此,Squash+Merge 按钮压缩了 4 个提交并将其替换为 1 ...upstream/master
我的 localhost 机器上的拉动现在我的 4 个提交仍然存在,并且 PR 所做的 Squashed-commit 以及一个新的提交,即“ Merge branch master .. blah ... noise ..spam
”提交:(: (:(
在合并壁球发生后我应该做一个特殊的技巧/工作流程..以确保我的dev
分支正确同步?就像..每个人都只是删除他们的本地主机dev
分支,然后再拉回upstream/master
他们的本地主机并进入(新创建的)dev
分支?
请记住:这里的目标是避免那些糟糕的“合并拉取请求 #2..”合并气泡消息。
还是人们暂时只是通过 CLI 执行此操作,直到 GitHub 学习如何执行此操作:(