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