更新时间:2025-08-20 GMT+08:00
分享

创建分支

功能介绍

创建分支

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

URI

POST /v4/repositories/{repository_id}/repository/branches

表1 路径参数

参数

是否必选

参数类型

描述

repository_id

Integer

参数解释:

仓库的ID,通过查询用户所有仓库接口查询项目列表获取。

约束限制:

不涉及。

取值范围:

1-2147483647

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释:

用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

约束限制:

必传。

取值范围:

字符串长度不少于1,不超过10万。

默认取值:

不涉及。

表3 请求Body参数

参数

是否必选

参数类型

描述

branch

String

参数解释:

分支名称。

约束限制:

不支持以 - . refs/heads/ refs/remotes/ 开头,不支持空格 [ \ < ~ ^ : ? * ! ( ) ' " | 等特殊字符,不支持以. / .lock结尾。

取值范围:

字符串长度不少于1,不超过200。

默认取值:

不涉及。

ref

String

参数解释:

基于分支名称。

约束限制:

不支持以 - . refs/heads/ refs/remotes/ 开头,不支持空格 [ \ < ~ ^ : ? * ! ( ) ' " | 等特殊字符,不支持以. / .lock结尾。

取值范围:

字符串长度不少于1,不超过200。

默认取值:

不涉及。

description

String

参数解释:

分支描述。

约束限制:

无。

取值范围:

字符串长度不少于1,不超过2000。

默认取值:

不涉及。

related_ids

Array of strings

参数解释:

关联工作项列表。

约束限制:

无。

取值范围:

无。

默认取值:

不涉及。

响应参数

状态码:201

表4 响应Body参数

参数

参数类型

描述

name

String

分支名称

取值范围:

1-100000

default

Boolean

是否为默认分支

can_delete

Boolean

用户是否为默认分支

can_read

Boolean

是否为默认分支

can_download

Boolean

是否为默认分支

can_push

Boolean

是否为默认分支

commit

CommitDto object

commit相关信息

merged

Boolean

所有提交是否合入到默认分支

protected

Boolean

是否为保护分支

created_at

String

创建时间

creator

UserBasicDto object

用户信息

description

String

分支描述

create_source

String

基于分支

create_source_exists

Boolean

基于分支是否存在

latest_pipeline

PipelineBasicDto object

流水线基本信息

opened_mr_count

Integer

该分支正在开启的合并请求个数

取值范围:

0-2147483647

diverging_commit_counts

DivergingCommitCounts object

表5 CommitDto

参数

参数类型

描述

id

String

id

message

String

消息

parent_ids

Array of strings

父节点提交ID

authored_date

String

创建该分支的时间

author_name

String

创建者名称

author_email

String

创建者邮箱

committed_date

String

代码提交的日期和时间

committer_name

String

提交者名称

committer_email

String

提交者邮箱

open_gpg_verified

Boolean

是否打开gpg校验

verification_status

Integer

验证状态

取值范围:

0-1

gpg_primary_key_id

String

GPG公钥的标识符

name

String

用户名

gpg_nick_name

String

昵称

gpg_tenant_name

String

租户名

gpg_user_name

String

特定GPG用户相关的信息

short_id

String

短id

created_at

String

创建时间

title

String

标题

author_avatar_url

String

author_avatar_url

committer_avatar_url

String

committer_avatar_url

relate_url

Array of RelatedCommitSimpleDto objects

only for DevCloud

nick_name

String

标题

tenant_name

String

tenant_name

user_name

String

用户名

表6 RelatedCommitSimpleDto

参数

参数类型

描述

related_id

String

关联工作项ID

related_url

String

关联工作URL

表7 UserBasicDto

参数

参数类型

描述

id

Integer

参数解释:

用户id。

取值范围:

1-2147483647

name

String

参数解释:

用户名称。

username

String

参数解释:

用户名。

state

String

用户状态

service_license_status

Integer

服务级权限状态 0:停用 1:启用

avatar_url

String

用户头像url

avatar_path

String

用户头像路径

email

String

用户邮箱

name_cn

String

用户中文名称

web_url

String

用户个人首页

nick_name

String

用户昵称

tenant_name

String

租户名称

error_message

String

参数解释:

部分查询接口校验到传参里的用户权限不足或不存在时,返回该用户但该字段不为空用于提示。

表8 PipelineBasicDto

参数

参数类型

描述

id

Integer

流水线ID

取值范围:

1-2147483647

web_url

String

流水线链接

sha

String

commit id

ref

String

分支

status

String

流水线状态,pending为排队,running为运行中,success为成功,failed为失败,canceled为取消,skipped为跳过,timedout为超时

枚举值:

  • pending

  • running

  • success

  • failed

  • canceled

  • skipped

  • timedout

表9 DivergingCommitCounts

参数

参数类型

描述

behind

Integer

落后默认分支提交数量

ahead

Integer

领先默认分支提交数量

状态码:401

表10 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

错误码。

error_msg

String

参数解释:

错误信息。

请求示例

POST https://{endpoint}/v4/repositories/2112015538/repository/branches

{
  "branch" : "mian",
  "description" : "123",
  "ref" : "master"
}

响应示例

状态码:201

OK

{
  "name" : "b6",
  "default" : false,
  "can_delete" : null,
  "can_read" : null,
  "can_download" : null,
  "can_push" : null,
  "commit" : {
    "id" : "****",
    "message" : "****",
    "parent_ids" : [ "6ac4a7f56d28c9b76d3a7210608f496c519058be" ],
    "authored_date" : "2025-06-27T01:52:33.000Z",
    "author_name" : "****",
    "author_email" : "****",
    "committed_date" : "2025-06-27T01:52:33.000Z",
    "committer_name" : "****",
    "committer_email" : "****",
    "open_gpg_verified" : null,
    "verification_status" : null,
    "gpg_primary_key_id" : null,
    "name" : null,
    "gpg_nick_name" : null,
    "gpg_tenant_name" : null,
    "gpg_user_name" : null,
    "short_id" : "****",
    "created_at" : "2025-06-27T01:52:33.000Z",
    "title" : "更新 ere",
    "author_avatar_url" : null,
    "committer_avatar_url" : null,
    "relate_url" : null,
    "nick_name" : null,
    "tenant_name" : null,
    "user_name" : null
  },
  "merged" : false,
  "protected" : false,
  "created_at" : "2025-07-18T11:24:46.000+08:00",
  "creator" : {
    "id" : "****",
    "name" : "****",
    "username" : "****",
    "state" : "active",
    "service_license_status" : null,
    "avatar_url" : "",
    "avatar_path" : null,
    "email" : "****",
    "name_cn" : "****",
    "web_url" : "https://example.com/****",
    "nick_name" : "****",
    "tenant_name" : "****",
    "error_message" : null
  },
  "description" : "****",
  "create_source" : "master",
  "create_source_exists" : true,
  "latest_pipeline" : null,
  "opened_mr_count" : 0,
  "diverging_commit_counts" : {
    "behind" : 0,
    "ahead" : 0
  }
}

状态码:401

Unauthorized

{
  "error_code" : "DEV.00000003",
  "error_msg" : "认证信息过期"
}

状态码

状态码

描述

201

OK

401

Unauthorized

错误码

请参见错误码

相关文档