跳转至

Branch

分支用于隔离开发与发布线。通过 API 可以列出、创建、删除分支,读取单个分支信息,并管理保护分支规则(哪些分支禁止强推/删除、允许谁推送)。

对象

对象 说明 相关接口
分支 分支名、提交 SHA、是否受保护等 获取项目所有分支
保护分支规则 匹配分支(支持通配)、推送权限与合并权限 获取保护分支规则列表

标识方式

  • 仓库用 owner + repo,分支用路径参数 name 或 branch 标识。
  • 保护规则用 wildcard 标识,可写通配形式匹配一批分支。

常见任务

注意事项

  • 新建保护规则用的是固定字面量 new:PUT …/branches/setting/new,不是 branches/{wildcard}/setting;更新与删除才用 {wildcard}。
  • 保护规则的列表接口是 GET …/protect_branches(下划线),与分支列表 …/branches 不是同一族路径。
  • 删除分支用 {name}、读取单个分支用 {branch},两个占位符名不同但语义一致,复制路径时注意别混。
  • 分支相关的权限(推送规则、权限模式)在仓库分组,本组只负责分支本身与保护规则。

接口列表

本模块共 8 个接口。

# 接口 方法与路径 说明
1 获取项目所有分支 GET /api/v5/repos/{owner}/{repo}/branches 该接口用于获取指定项目(仓库)下的全部分支列表,支持按名称或更新时间排序及分页查询,返回每个分支的名称、描述、指向的…
2 创建分支 POST /api/v5/repos/{owner}/{repo}/branches 该接口用于在指定仓库中创建新分支,可指定分支起点、新分支名称及描述信息,创建成功后返回新分支的名称、描述、指向的提交…
3 删除分支 DELETE /api/v5/repos/{owner}/{repo}/branches/{name} 该接口用于删除指定仓库中指定的分支。调用成功后,目标分支将被移除,响应体为空。
4 获取单个分支 GET /api/v5/repos/{owner}/{repo}/branches/{branch} 该接口用于获取指定仓库中的单个分支信息,返回分支名称、描述、所指向提交的详细信息以及是否已合并、是否受保护、是否为默…
5 新建保护分支规则 PUT /api/v5/repos/{owner}/{repo}/branches/setting/new 该接口用于为指定仓库新建保护分支规则,通过设置分支或通配符,并指定可推送代码及可合并 Pull Request 的成…
6 删除保护分支规则 DELETE /api/v5/repos/{owner}/{repo}/branches/{wildcard}/setting 该接口用于删除指定仓库中指定分支的保护分支规则,操作成功后返回空响应体;若目标分支的保护规则不存在,则返回错误提示信…
7 获取保护分支规则列表 GET /api/v5/repos/{owner}/{repo}/protect_branches 该接口用于获取指定仓库的保护分支规则列表,返回每条规则的分支名称、更新时间、允许推送与合并的用户列表,以及各角色(开…
8 更新保护分支规则 PUT /api/v5/repos/{owner}/{repo}/branches/{wildcard}/setting 该接口用于更新指定仓库中特定保护分支的规则,通过设置可推送代码的成员与可合并请求的成员,来控制代码推送和合并的权限。

本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 gitcode-dev/atomgit-api-doc