Git推送报错如何解决?远程提交导致分支出现分歧
解决Git推送时分支分歧的报错问题
问题原因
本地分支与远程分支存在独立的提交历史,无法直接推送,必须先整合远程分支的变更。
单次解决方法(仅当前操作生效)
根据需求选择以下命令之一执行,完成后再执行git push:
- 合并远程变更到本地(生成合并提交):
git pull --no-rebase - 变基本地提交到远程分支顶端(提交历史更线性):
若出现冲突,编辑冲突文件后执行git pull --rebasegit add <冲突文件>,再运行git rebase --continue - 仅接受快进合并(仅当本地提交完全在远程提交之后时生效):
若无法快进,需选择前两种方式处理git pull --ff-only
设置默认合并行为(永久生效)
针对当前仓库设置默认规则,如需全局生效(所有仓库适用),在命令后添加--global参数:
- 默认使用合并模式:
git config pull.rebase false - 默认使用变基模式:
git config pull.rebase true - 默认仅允许快进合并:
git config pull.ff only
内容的提问来源于stack exchange,提问作者Bhavya Bibi
相关产品推荐
相关产品推荐

