GitHub分支保护规则合规困境:已验证提交发起PR仍被判定未验证
解决方案
核心问题定位
你本地dev分支的提交已签名,但远程GitHub上的dev分支仍保留着未签名的旧提交,PR校验的是远程分支的提交状态,因此触发了分支保护规则的拒绝。
步骤1:强制推送变基后的本地分支到远程
执行以下命令覆盖远程dev分支(确认团队无其他人在该分支工作,避免覆盖他人未推送的修改):
git push origin dev --force
步骤2:确认远程提交的验证状态
登录GitHub进入仓库的dev分支页面,检查每个提交右侧是否显示Verified标记,确保所有提交都已完成签名验证。
步骤3:重新触发PR校验
- 若已创建的PR仍存在,刷新页面等待GitHub重新执行分支保护规则校验;
- 若校验未自动触发,关闭当前PR并重新创建从dev到qas的拉取请求。
额外排查点
- 交互变基时,确保对所有目标提交执行了重新签名:在变基的
edit模式下,对每个提交执行git commit --amend --no-edit -S,再执行git rebase --continue完成变基; - 确认你的GitHub账号已添加本地用于签名的GPG密钥,且密钥状态为有效。
内容的提问来源于stack exchange,提问作者Diego-MX
相关产品推荐
相关产品推荐

