将本地文件提交至远程Git仓库遇阻,求解决方案
Git提交失败的解决方法
核心原因
远程仓库开启了分支保护规则,禁止直接向主分支(main/master)提交代码,哪怕你本地只有主分支,远程的规则也会拦截你的commit和push操作。
具体操作步骤
创建并切换到新的功能分支:
git checkout -b feature/add-your-files(或者用Git 2.23+的新命令:
git switch -c feature/add-your-files,分支名可以自定义,比如feature/new-doc之类的)处理已有的提交(如果之前已经在主分支做了commit):
先查看主分支的提交哈希:git log --oneline找到对应的哈希值后,把提交迁移到新分支:
git cherry-pick <提交哈希>之后可按需撤销主分支的提交:
git checkout main git reset HEAD~1 --hard提交文件到新分支(如果还没commit):
git add . git commit -m "添加新文件:xxx"推送新分支到远程:
git push origin feature/add-your-files在GitHub上合并代码:
登录你的GitHub仓库页面,推送后会自动弹出创建Pull Request(PR)的提示,按照页面指引完成PR创建,无需审核的话可直接合并到主分支。合并后更新本地主分支:
git checkout main git pull origin main
内容的提问来源于stack exchange,提问作者Austin
相关产品推荐
相关产品推荐

