You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GitHub REST API创建Pull Request时能否同步添加标签?

解决方案

GitHub的PR创建接口本身不支持直接指定标签参数,你需要分两步完成操作:

  • 第一步:调用现有PR创建接口,解析接口返回结果,获取新创建PR的编号(响应结构中的number字段)
  • 第二步:调用Issue标签添加接口完成标签绑定(GitHub中PR属于特殊类型的Issue,标签管理复用Issue相关接口)

你当前代码中在创建PR的请求体里加labels参数是不生效的,调整后的完整流程代码示例如下:

# 第一步:创建PR,获取返回的PR编号
pr_create_resp = execute_command_with_output(
    'curl --silent -X POST -H "Authorization: token {}" -H "Accept: application/vnd.github.v3+json" '
    '{}/repos/{}/pulls -d \'{{"head":"{}","base":"{}","title":"{} Cherry-Pick from PR {}"}}\''.format(
        token, url, repository, t_branch, b_branch, ticket, pr
    ),
)
# 解析响应拿到PR编号,这里假设你用json解析返回结果
import json
pr_data = json.loads(pr_create_resp)
pr_number = pr_data['number']

# 第二步:给新建的PR添加标签
execute_command_with_output(
    'curl --silent -X POST -H "Authorization: token {}" -H "Accept: application/vnd.github.v3+json" '
    '{}/repos/{}/issues/{}/labels -d \'{{"labels": ["bug"]}}\''.format(
        token, url, repository, pr_number
    ),
)

注意:如果需要添加多个标签,直接在labels数组里追加即可,比如["bug", "cherry-pick"]

内容的提问来源于stack exchange,提问作者Nithya Kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.10 23:48:01