关于报错“! [rejected]master -> master (non-fast-forward)”的解决方法

2024.06.06日补充
该问题引起的原因是:远程分支存在本地分支没有的commit。

下面暴力重构的方式,只适合本地提交没那么重要的情况

所以优雅的解决的方式是 先使用 git pull 拉取远程分支中的提交,同时该命令会自动和本地代码进行合并。
如果远程仓库代码与本地代码有冲突,需要手动解决冲突之后再手动git commit
成功合并之后再git push即可成功。

若要查看冲突文件,可以使用 git status 命令根据提示进行操作
建议使用可视化工具 tortoiseGit, 可以更清晰地看到冲突文件

可以自行百度该工具进行下载,也可以关注我的公众号《微代码人生》发送git关键词获取。


更新分割线

使用本文方法前,请自行备份

错误截图
在遇到上述错误自己无解决时,于是开始了网上大搜索:

git push -u origin master 上面命令将本地的master分支推送到origin主机,同时指定origin为默认主机,后面就可以不加任何参数使用git push了

首先尝试了 命令git push -u origin master -f,然后惊喜地出现了下面错误,不能强制推送到受保护的分支
在这里插入图片描述
随后就又找到了一个方法:先使用 git pull --rebase origin master
然后再使用命令 push -u origin master
终于出现了成功界面,哈哈哈
success

最终解决方法参考自:

https://blog.csdn.net/weixin_43211277/article/details/82715355

若代码未备份,出现丢失现象, 请参考git reflog进行恢复

评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值