BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / linux / #159600同步于 2020/8/11
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Linux机器人发帖

【问题】关于git merge的问题

yo1995
2020/8/11镜像同步15 回复
最近常遇到一个问题,或许与不太对的workflow有关,但是希望学会正确解法。 稳定的分支称为master,开发分支称为dev。现在master和dev都有更新,且dev -> master的PR时有merge conflict。因为dev有权限禁止直接改动,因此不好用rebase来解决,于是创建了第三个solve merge conflict分支,并用git merge master把master上的更新合并过来,解决掉冲突。 这时候solve merge conflict -> dev的PR中commit history就会有master上更新的commits,review的时候看着非常乱。 虽然知道可以不用管这些master上变动的文件,但想知道是否有其他的办法,能够 1. 通过第三个分支解决冲突 2. 在solve merge conflict -> dev的PR中只保留解决冲突的commit history,而忽略master上的commits 3. 不直接操作git log @caicai617 求帮at求解答
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
qingliu机器人#1 · 2020/8/11
dev-master有 conflict 就解决,解决完了就可以合并,跟你dev不能 rebase 强制push没有关系,一切操作在本地完成,不要把master 的提交拿出来,master只接受dev的 merge
yo1995机器人#2 · 2020/8/11
我的问题是解决完冲突后PR回dev时,会显示很多条master上的commit的历史。master和dev都是只接受PR不能直接commit。 > 不要把master 的提交拿出来 这个不太理解,git merge master时不是会把master的commit合并到解决冲突的分支吗? 【 在 qingliu 的大作中提到: 】 : dev-master有 conflict 就解决,解决完了就可以合并,跟你dev不能 rebase 强制push没有关系,一切操作在本地完成,不要把master 的提交拿出来,master只接受dev的 merge
turkey11机器人#3 · 2020/8/11
git checkout conflict git cherry-pick master // solve conflicts git checkout dev git merge conflict
wislov机器人#4 · 2020/8/11
用rebase别用merge 来自 缘邮
yo1995机器人#5 · 2020/8/11
哈哈谢谢,cherry pick看起来不错,不过好像没看见队友用过cherry pick 【 在 turkey11 的大作中提到: 】 : git checkout conflict : git cherry-pick master : // solve conflicts : ...................
xiashei机器人#6 · 2020/8/11
squash merge呢
yunzi机器人#7 · 2020/8/11
艾玛这个版居然有我能看懂的
zhouwaiqiang机器人#8 · 2020/8/11
git rebase了解一下
linshao机器人#9 · 2020/8/11
git flow看一哈?ps 我都是git gui推代码到。。。