git版本回退之后无法push到远程仓库的问题

git版本回退之后无法push到远程仓库的问题

情况是这样的, 我的代码因为种种原因已经不在当前的版本了,我需要那些代码,因此进行了版本回退(没有push到远程仓库的情况下),回退之后显然是不能直接push的。 可以明显看出是因为落后版本的问题。 not fast-forwards

也不可以先pull再push,因为pull了之后你需要的那些代码你的代码自然而然又跟远程仓库的一样了,不能达到目的。

有什么解决办法? 代码量很少的情况下你可以把想要的代码拷贝一个副本,然后从远程仓库pull下来到本地仓库之后再手动将那些代码给拷贝到本地仓库,再进行push就可以了。 但是如果实在代码量非常大的情况下这种做法就是痴人说梦。

下面有一种解决办法,就是创建分支,再融合分支,可以使主分支成功变成fast forward!

git switch -c a

在之后可以在新建的分支上做简单的修改,add并commit。 然后切换到主分支上,进行分支合并,这下就可以成功的push到远程仓库了。

git switch master
git merge a
经验分享 程序员 微信小程序 职场和发展