Tag¶
标签用于给提交打上版本标记。通过 API 可以列出、创建、删除仓库标签,并管理保护标签规则(限制谁可以创建、删除、修改哪些标签)。
对象¶
| 对象 | 说明 | 相关接口 |
|---|---|---|
| 标签(Tag) | 标签名与指向的提交 | 列出项目所有的tags |
| 保护标签规则 | 匹配规则、创建/删除权限、详情 | 列出项目保护 tag |
标识方式¶
- 仓库用
owner+repo,标签用tag_name标识。 - 保护规则的创建与修改在请求体里给出匹配规则,删除与详情才用
tag_name。
常见任务¶
注意事项¶
- 普通标签走
/tags,保护标签走/protected_tags,两组路径并列,删错组不会报语义错误但结果完全不同。 - 保护规则的创建与修改都用同一个不带
{tag_name}的路径…/protected_tags,靠方法区分(POST新建、PUT修改);删除与详情才带{tag_name}。 - 标签名里带
/等特殊字符时要按路径参数规范转义,否则会被当成多级路径。 - Release 是按标签发版的,标签创建与 Release 创建是两步:先打标签,再在 Release 分组里创建版本。
接口列表¶
本模块共 8 个接口。
| # | 接口 | 方法与路径 | 说明 |
|---|---|---|---|
| 1 | 列出项目所有的tag | GET /api/v5/repos/{owner}/{repo}/tags |
用户调用此接口,进行列出项目所有的tags操作. |
| 2 | 创建仓库的Tag | POST /api/v5/repos/{owner}/{repo}/tags |
用户调用此接口,进行创建一个仓库的Tag操作. |
| 3 | 删除仓库的Tag | DELETE /api/v5/repos/{owner}/{repo}/tags/{tag_name} |
用户调用此接口,进行删除仓库的一个Tag操作. |
| 4 | 列出项目保护 tag | GET /api/v5/repos/{owner}/{repo}/protected_tags |
该接口用于列出指定仓库中的保护 tag 列表,返回各保护 tag 的名称及其创建所需的最低访问级别,并支持分页查询,… |
| 5 | 创建项目保护 tag | POST /api/v5/repos/{owner}/{repo}/protected_tags |
该接口用于在指定仓库下创建一条项目保护 tag,并设置标签名称及允许创建的访问级别,同时可指定具备创建权限的自定义角… |
| 6 | 修改项目保护 tag | PUT /api/v5/repos/{owner}/{repo}/protected_tags |
该接口用于修改指定仓库的项目保护 tag,可设置标签名称及允许创建的访问级别,用于管控标签的创建权限。 |
| 7 | 删除项目保护 tag | DELETE /api/v5/repos/{owner}/{repo}/protected_tags/{tag_name} |
该接口用于删除指定仓库中的保护标签,需提供仓库所属空间地址、仓库路径及标签名称。删除后该标签将不再受保护,接口成功时… |
| 8 | 获取项目保护 tag 详情 | GET /api/v5/repos/{owner}/{repo}/protected_tags/{tag_name} |
该接口用于获取指定仓库下某个保护 tag 的详情,返回该标签的名称、允许创建(推送)该标签的最低角色等级及对应的角色… |
本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 gitcode-dev/atomgit-api-doc