跳到主要内容

PR 设置

Pull Request(PR)是协作开发的重要工具,GitCode 提供了多种 PR 设置选项,帮助您自定义代码评审与合并的流程。以下内容将带您了解这些设置及其作用。

PR 基本设置概览


PR 的基本设置选项与说明如下表所示:

功能说明
最低评审人数设置合并 PR 所需的最低评审人数,确保代码质量通过足够的评审
评审问题全部解决才能合入在所有评审问题被标记为解决之前,禁止合并 PR
流水线运行通过合并 PR 前需确保关联的流水线任务成功运行并通过检查
启用轻量级 Pull Request提供简化版本的 PR 功能,适用于较简单的变更请求场景
禁止合入自己创建的 Pull Request防止开发者合并自己创建的 PR,提升代码评审的客观性
允许管理员强制合入赋予管理员绕过限制强制合并 PR 的权限
创建 Pull Request 时,默认选中“合并后关闭已关联的 Issue”选项提高效率,自动将已解决的 Issue 标记为关闭状态
关闭 PR 后允许重新打开允许开发者重新打开已经关闭的 PR,适用于需求变更或误操作场景
允许 Pull Request 合并后继续做代码检视和评论在 PR 合并后保留代码检视和评论的功能,便于后续讨论
将自动合并的 PR 状态标记为关闭状态为自动合并的 PR 添加关闭状态标记,方便区分和管理
Pull Request 合入后,默认删除源分支提高分支管理效率,减少无用分支对仓库的占用
禁止 Squash 合并(合入 PR 时禁止 Squash 合并)禁用 Squash 合并,保留完整的提交历史
新建 Pull Request,默认开启 Squash 合并默认启用 Squash 合并,将多个提交压缩为单个提交,优化历史记录
合并模式提供三种合并模式选项:通过 merge commit 合并、通过 merge commit 合并(记录半线性历史)、Fast-forward 合并

image-20241227192409702

合并模式


GitCode 支持以下三种合并模式,可根据需求选择适合的方式:

合并模式描述特点选项
通过 merge commit 合并每次合并操作都会产生一个 merge commit 提交,用于记录合并历史。1. 即使 PR 中的提交不基于目标分支的最新提交点,也可直接执行合并。
2. Squash 合并不会产生 Merge 节点。
1. 使用 PR 合入者生成 Merge Commit。
2.使用 PR 创建者生成 Merge Commit。
通过 merge commit 合并(记录半线性历史)每次合并操作都会产生一个 merge commit 提交,但需满足 Fast-forward 条件,即 PR 中的所有提交需基于目标分支的最新提交点。1. 若不满足条件,开发者需进行 rebase 操作。
2. 这种模式确保合并后目标分支可以正确构建。
Fast-forward 合并合并操作不会产生 merge commit 提交,仅在满足 Fast-forward 条件下执行合并。1. PR 中的提交需基于目标分支的最新提交点。
2. 若不满足条件,开发者需进行 rebase 操作。

PR 审查设置


允许在创建 Pull Request 时自动分配审查人员和测试人员,可以简化团队成员的工作流程,提高代码审查和合并流程的效率。

image-20241227191410972

代码审查设置

  • 在创建 PR 时,系统将自动分配预设的审查人员,确保及时进行代码审查。
  • 可设置 PR 通过审查所需的最低人数,以保证代码变更的质量符合团队要求。

代码测试设置

  • 系统会在创建 PR 时自动分配测试人员,负责执行代码变更的测试工作。
  • 设置 PR 通过测试所需的最低人数,确保变更被充分验证,减少潜在问题。

通过合理配置审查与测试设置,团队可以在代码合并流程中有效分工,减少沟通成本,提升开发效率,同时保证代码质量。