git 向远程仓库push的问题
迷茫
迷茫 2017-04-22 09:00:39
0
6
781

一般在push的时候是不是都会先pull一下以保证代码最新,但是如果以下场景怎么办:

A:push,但是git提示过期于是进行pull,pull之后发现有冲突,然后merge
B:在Amerge的过程向服务器push了。
A:等他merge完,在push的时候服务器又变化了,再pull - merge
.....

这样会不会导致A一直没法push?

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(6)
巴扎黑

第一次 merge 时产生的冲突的原因已经在本地解决了, 如果其他人 push 的代码对这部分没有变更的话, 再次 merge 会很顺利的, Git 会自动进行处理,不用过于担心。

如果总是在 merge 的时候产生冲突,那么说明冲突部分的代码极端不稳定, 需要开发人员之间进行沟通,彻底解决,或者采用一些方法绕开。

小葫芦

merge了后就是一个新版本了,push发现其他版本了后,再继续merge一个版本出来。

总有一天可以push上去的。

PHPzhong

这个问题应该分两种解决方法: 第一种:应该是只有版本差异过大的时候,才必须先pull + merge才能push。但是你merge之后,版本差异不大的时候,可以push。 第二种:每个人应该保持一个自己的分支。先push到自己的分支上,然后再从服务器端merge到master上。

巴扎黑

A和B可以商量好,达成一致,都只rebase不merge。这样历史看起来也比较好看,一根线,不乱。

刘奇

如果出现这样的问题,那说明A、B之间的代码耦合度太多,需要重新分工

迷茫

既然冲突了就merge呗,一直merge到他和你没冲突就可以push上去啦

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板