浏览器标题切换
浏览器标题切换end

Intern Day110 - git把本地分支push到远程服务器时报错"Updates were rejected because the tip of your current branch is behind"

在本地develop下开发完成后,经过add、commit等操作后,当走到最后一步pull操作的时候,产生了如下错误:

undefined

出现问题的原因

当我从远程服务器上拉取develop分支下的代码,在本地进行修改。

然后,在我clone之后,此时A同事也做了和我同样的操作,并且提交了修改到develop上。

这个时候,我的开发任务结束了,想要把代码后合并到远程服务的develop分支上,就会产生如上图所示错误。

概括来说,就是:不同的开发人员在没有约定的前提下,先后对同一份代码进行了修改提交,从而会在某些操作中产生冲突,所以报了错。

解决办法一(尽量不要用这种)

如果已经把所有的代码进行了add 和 commit,然后我尝试将远程代码拉取更新并与本地合并git pull -f origin develop 。(-f是强制的意思)

但是远程会多自动报一条信息(也就是强制合并的信息)
Merge branch 'develop' of git.xx:xxxxx into develop

解决办法二(用这个更优)

使用 git stash 命令。

首先明确一下 git stash 命令的使用场景:比如当对 develop 下的A分支进行修改,修改到一半,需要去修改B分支,这个时候如果直接 checkout 切换到B,会报错。这个时候我们就需要用到 git stash 命令去解决这个问题。

git stash 将未提交的改动保存在本地,让你可以进行修改、切换分支以及其他 Git 操作。(需要的时候,你可以重新应用这些存储的改动。)暂存是本地范围的,不会被 git push 推送到远程。

如果还未对代码进行commit,那么就将本地代码先存到暂存区stash中,然后进行pull。

posted @   抓水母的派大星  阅读(144)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
历史上的今天:
2020-06-07 C++ - new运算符
2020-06-07 C++ - 指针
2020-06-07 C++ - 函数的分文件编写
2020-06-07 C++ - 数据类型所占内存
点击右上角即可分享
微信分享提示