Git推送main分支失败求助:触发non-fast-forward拒绝错误
解决Git推送失败(non-fast-forward)的方法
问题原因
本地main分支的提交进度落后于远程main分支,远程分支存在本地没有的新提交,Git拒绝直接推送以避免代码冲突。
解决步骤
拉取远程最新变更
执行命令将远程main分支的代码合并到本地:git pull origin main若出现代码冲突,Git会自动标记冲突文件,需手动处理。
处理合并冲突(若有)
打开冲突文件,找到<<<<<<< HEAD、=======、>>>>>>> [远程提交哈希]这类标记,按需保留代码后删除标记,然后执行:git add 冲突文件名 git commit -m "解决合并冲突"重新推送代码
完成合并或冲突处理后,执行推送命令:git push origin main
特殊场景处理(谨慎操作)
如果确定不需要保留远程分支的新提交,想用本地代码覆盖远程,可执行强制推送:
git push origin main --force
注意:强制推送会覆盖远程分支历史,团队协作中除非确认不会影响其他成员,否则禁止使用。
内容的提问来源于stack exchange,提问作者Soham Patil
相关产品推荐
相关产品推荐

