push操作失败分为两种情况:

1.团队中其他人员push失败,那么可能是没有加入团队:解决方法
2.已经加入团队,但还是push失败;或者是远程库创建者push失败。可能是团队中的其他人修改过文件,并且已经push过了。简单的说就是团队中,谁先push谁成功。
那么以下就是解决办法。

 

问题出现:

我们用以下两文件进行模拟:
Git团队中push操作失败
在 “远程库创建者” 文件夹中,使用远程库创建者的GitHub账号提交文件到远程库,这时没有任何问题,如下图:
Git团队中push操作失败
我们再到 “团队其他人员” 这个文件夹中修改提交相同的文件,当然使用团队其他人员的GitHub账号。
Git团队中push操作失败
可以看见,push出错了。

这就是问题所在,在团队合作中,谁先push谁先成功。
其实这个问题是这样的,远程库中,“远程库创建者” 和 “团队其他人员” 三者中,文件是一摸一样的。在上文中,“远程库创建者” 修改了旧版本并且做了 push 操作,那么远程库和 “远程库创建者” 文件保持一致,都是最新版本。这是 “团队其他人员” 在之前的旧版本上修改,再push,那么GitHub无法决定到底要保留哪个文件,只好阻止后者push。

 

问题解决:

我们已经知道了问题所在,那么如何解决?

说白了,后者之所以push不到远程库中,是因为后者在旧版本上修改并push的。那么我们先将远程库文件pull下来,再修改并push就好了。

所以分为以下几步:
1.git pull [远程库地址] [分支名](拉取文件)
2.将冲突文件修改
3.git add [文件名] git commit -m “注释” 不需要文件名
4.git push [远程库地址] [分支名](push到远程库中)

附长图:
Git团队中push操作失败

相关文章: