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

Git误推送至错误受保护远程分支,无法强推/删除分支如何解决

解决方法

操作步骤

  • 进入本地项目2对应的仓库目录,切换到存储项目2代码的本地分支,先确认所有项目2的代码修改都已经提交完成:
    # 查看当前工作区状态
    git status
    # 如果存在未提交的修改,执行以下命令提交
    git add .
    git commit -m "完成项目2开发"
    
  • 拉取远程project2分支的历史记录,允许无关历史合并且指定合并策略为完全保留本地内容,忽略远程误推的项目1代码:
    git pull origin projects/project2 --allow-unrelated-histories -s ours
    
  • 执行完成后直接正常推送即可,本次推送是基于远程已有提交的新增提交,符合受保护分支的推送规则,不会被拦截:
    git push origin HEAD:projects/project2
    

逻辑说明

受保护分支禁止强制推送的核心限制是不允许篡改已有提交历史,仅允许在原有历史基础上新增提交。上述操作先将远程project2的误推提交拉到本地完成合并,合并后生成的新提交是远程已有提交的后继提交,完全符合推送规则,同时-s ours参数保证了合并后的代码完全为本地的项目2代码,不会残留之前误推的项目1内容。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 18:03:03