返回信息流A和B都克隆了同一个远程仓库,然后B修改了其中的一个文件内容并提交push到远程仓库,A也修改了同一个文件也提交并要push到远程仓库,此时A的push肯定会出错,普遍的解决方法就是A先将远程仓库的最新提交pull或fetch下来,在本地解决冲突再提交推送,但这可能会导致B之前已经推送到远程仓库所做的修改在A进行合并时被修改了甚至丢弃了,有没有办法不修改并保留远程仓库中B已经推送的修改,然后也能正确的推送A的修改?
这是一条镜像帖。来源:北邮人论坛 / java / #57046同步于 2017/8/12
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖
请教大家,一个关于git push时发生冲突的问题?
cbd
2017/8/12镜像同步24 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
不能。一个仓库(不管是服务器的还是开发机的)一个名字的branch只能有一个。所以同一个branch(比如master)不可能又指向A的修改又指向B的修改。
如果怕merge错的话,先git fetch然后手动merge。
Merge也是个大活 产生冲突就意味着你们对同一块代码进行了修改 例如你们同时修改了某方法的其中十行 这在开发当中本来就是应该要避免的 只能两个人沟通以后解决冲突 以后合作开发时要分工明确 绝不能修改同一块代码 但比如你修改1到5行 他修改10到20行 应该是不会产生冲突的
而且两个人的话应该是两个开发分支 合适的时候进行合并 经过测试后确认没有问题再合并到发布分支或者版本分支 具体参考gitflow
【 在 nsfw2017 的大作中提到: 】
: Merge也是个大活 产生冲突就意味着你们对同一块代码进行了修改 例如你们同时修改了某方法的其中十行 这在开发当中本来就是应该要避免的 只能两个人沟通以后解决冲突 以后合作开发时要分工明确 绝不能修改同一块代码 但比如你修改1到5行 他修改10到20行 应该是不会产生冲突的