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

Bitbucket中Commit未带JIRA编号前缀,PR无法合并至master的解决咨询

解决Bitbucket PR合并按钮禁用问题(缺失JIRA编号前缀的Commit)

先澄清你的两个疑问

  • 从master新建分支合并成单个Commit的方法可行,但没必要多建分支,直接在原Branch A上修改提交历史更高效。
  • Commit压缩(squashing)完全适用这个场景,它可以修改分支的Commit历史,重写后远程分支的提交记录会被更新,不会再保留那个缺失JIRA编号的Commit。

具体解决方法(二选一即可)

方法1:仅修改有问题的单个Commit

  1. 切换到Branch A并拉取最新代码:
    git checkout BranchA
    git pull origin BranchA
    
  2. 执行交互式rebase,定位到有问题的Commit的前一个Commit(比如要修改倒数第2个Commit,就用HEAD~2,或者直接写该Commit父节点的哈希值):
    git rebase -i HEAD~2
    
  3. 在弹出的编辑界面中,把有问题的Commit前的pick改成reword(或简写r),保存退出。
  4. 进入Commit信息编辑页面,把内容改成带JIRA编号前缀的格式(比如PROJ-456: 修复XX逻辑问题),保存退出。
  5. 因为重写了提交历史,需要强制推送远程分支:
    git push origin BranchA --force
    
  6. 回到Bitbucket刷新PR页面,合并按钮即可正常使用。

方法2:将所有Commit压缩为单个带JIRA编号的Commit

  1. 同样先切换到Branch A拉取最新代码:
    git checkout BranchA
    git pull origin BranchA
    
  2. 基于master分支执行交互式rebase:
    git rebase -i origin/master
    
  3. 在编辑界面中,保留第一个Commit的pick,把其他所有Commit前的pick改成squash(或简写s),保存退出。
  4. 编辑新的合并后Commit信息,加上正确的JIRA编号前缀,保存退出。
  5. 强制推送远程分支:
    git push origin BranchA --force
    
  6. 刷新Bitbucket的PR页面即可。

注意事项

  • 如果Branch A有其他开发者共同开发,强制推送会覆盖远程分支内容,操作前务必和团队成员沟通,让他们重新拉取代码。
  • 确保使用的JIRA编号是项目关联的有效编号,避免再次触发校验失败。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 15:31:18