my-git

Branch Protection

分支保护用于保护关键分支,避免未经审查、未经验证或高风险操作直接进入主线。

对团队仓库来说,mainmasterrelease/* 这类分支应该被当成公共资产管理。

推荐配置

建议保护的分支

最小配置

小团队可以先启用:

  1. Require pull request before merging
  2. Require status checks before merging
  3. Block force pushes
  4. Block deletions

这样能先防住最常见的事故:

成长期团队配置

团队变大后,建议继续启用:

这些规则可以把 Review、CODEOWNERS、CI 串成一个完整合入流程。

常见误区

1. 只保护 main

如果团队使用 release/*hotfix/*,这些分支也应该保护。

2. 只加规则,不管 CI 稳定性

必需检查必须稳定。flaky test 会让团队开始绕过规则。

3. 管理员长期绕过规则

管理员绕过应该只用于极少数紧急场景,并留下记录。

延伸阅读