如何强制gh CLI的pull request标题默认始终使用分支名称
解决方案
目前GitHub CLI(gh)没有原生内置的配置项,可以直接强制gh pr create在所有场景下默认将分支名称作为PR标题,其默认标题生成逻辑就是你观察到的三类情况。
针对你需要保留交互修改标题能力的需求,可以通过自定义shell函数或者gh别名的方式实现,方案如下:
方案:自定义gh别名实现默认取分支名作为标题,支持交互修改
你可以在gh的配置文件~/.config/gh/config.yml中添加如下自定义别名:
aliases: pr-custom: | !sh -c ' # 获取当前主题分支名称 branch_name=$(git rev-parse --abbrev-ref HEAD) # 弹出输入提示,默认值为分支名,支持用户修改 read -e -p "PR标题(默认使用分支名: $branch_name):" input_title final_title=${input_title:-$branch_name} # 调用原生gh pr create,传入计算好的标题,剩余参数原样透传 gh pr create --title "$final_title" "$@" ' -
配置完成后,你只需要执行gh pr-custom即可触发流程:
- 默认自动取当前分支名作为PR标题,直接回车即可使用该值
- 支持手动输入修改标题,满足灵活调整需求
- 后续的
gh pr create原生交互流程(填写PR描述、选择评审人等)完全保留,和原有使用体验一致
补充说明
此前提到的直接通过子shell给gh pr create传递--title参数的方案,确实会跳过标题的交互修改步骤,不符合「默认标题可修改」的要求,上述自定义别名的方案可以完美解决这个问题。
如果不想自己封装逻辑,也可以到gh cli的官方开源仓库提交功能需求,申请增加默认标题生成规则的配置开关。
内容的提问来源于stack exchange,提问作者Ad N
相关产品推荐
相关产品推荐

