git 常见冲突解决——git push遇到报错error: failed to push some refs to ‘git@git.xxx.com:xxx/xxx.git

1 问题描述

在提交代码时我们在本地直接执行如下命令:

#添加修改代码文件到暂存区
git add 'xx/xxx/xxx/test.json'

#提交代码到本地仓库
git commit -m 'insert xx/xxx/xxx/test.json'

# 提交代码到远程仓库
git push

出现如下报错:

To git@github.com:xxx/xxx.git
 ! [rejected]        bd_tools2.0 -> bd_tools2.0 (non-fast-forward)
error: failed to push some refs to 'git@github.com:xxx/xxx.git
hint: Updates were rejected because the tip of your current branch is behin
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.

2 原因分析

造成这个问题的主要原因是我们在提交代码时没有将远程仓库中代码变动拉到本地仓库中,因此产生了冲突。也就是在我们提交之前将别人已经先提交代码到远程仓库中,使得远程仓库中已经发生改变。因为远程库与本地库不一致造成的,那么我们把远程库同步到本地库就可以了。

3 问题解决方案

这条指令的意思是把远程库中的更新合并到本地库中,–rebase的作用是取消掉本地库中刚刚的commit,并把他们接到更新后的版本库之中。

git pull --rebase origin bd_tools2.0

4 形象的解释下错误情况的发生和解决

在这里插入图片描述
git pull –rebase origin bd_tools2.0意为先取消commit记录,并且把它们临时 保存为补丁(patch)(这些补丁放到”.git/rebase”目录中),之后同步远程库到本地,最后合并补丁到本地库之中。
在这里插入图片描述
接下来就可以把本地库push到远程库当中了。
在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
当你执行`git push origin master`时,报错`error: failed to push some refs to '172.'`。这个错误通常表示你本地的分支与远程分支有冲突,无法直接推送变更。解决这个问题的方法有几种。 一种解决方法是执行`git pull`命令,以确保你本地的分支与远程分支同步。你可以使用以下命令: ``` git pull origin master ``` 这将从远程仓库拉取最新的变更并合并到你的本地分支中。 如果你执行了`git pull`命令后仍然无法解决问题,你可以尝试强制推送(注意这可能会覆盖远程分支的变更)。你可以使用以下命令: ``` git push -f origin master ``` 这将强制推送你的本地分支到远程分支。 另一种解决方法是执行`git pull --rebase`命令,这将允许你在合并远程变更之前修改本地分支的提交历史。你可以使用以下命令: ``` git pull --rebase origin master ``` 然后,你可以解决任何冲突,并在本地分支上重新提交。最后,你可以使用`git push`命令将你的变更推送到远程分支。 希望以上解决方法能帮助你解决问题。如果问题仍然存在,请检查你的网络连接或联系你的版本控制系统管理员以获取帮助。 <span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [git push origin master 异常 error: failed to push some refs to ‘https://gitee.com/...](https://blog.csdn.net/qq_41617060/article/details/121799711)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [git push 出现报错 error: failed to push some refs to](https://blog.csdn.net/m0_49811662/article/details/122406109)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

扫地增

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值