39|禁止向集成分支执行push -f 操作

40|禁止向集成分支执行变更历史的操作

提问
集成分支禁止rebase,多人协作是一般都会有各个仓库的merge,怎么保证集成分支的commit是线性的呢?
作者回复
如果线性对你们团队很重要的话,办法肯定是有的。比如master为集成分支,且要求版本历史为线性,假设在GitHub平台上,首先为master分支设置Branch protection rule(不允许直接push),勾选“Require pull request reviews before merging。
其次,Merge Button选择“Allow squash merging”或者“Allow rebase merging”,不要选“Allow merge commits”。