请教一个开发流程中 GIT 解决冲突的问题

204 天前
 sngxx
基准分支是 master ,开发分支是 feature 。现在准备发布上线了,需要 feature 合入 master ,此时有冲突,我解决冲突有两种方式。

一是:直接把 master 合入 feature 解决冲突,再把 feature 合入 master ;
二是:先从 master 拉出分支 master_1 ,把 feature 合入 master_1 解决冲突,再把 master_1 合入 master ;
这 2 种有区别吗,LD 必须让第二种,不理解。
9125 次点击
所在节点    git
121 条回复
JohnSmith
204 天前
merge queue 的需求啊 github 已经原生支持了 就是防止并行开发冲突的
ryougifujino
204 天前
如果 feature 分支是和其他人共享的,就不要用 rebase ,用 merge
leonshaw
204 天前
@codingbody rebase 可能需要多次解决冲突并且会改变/丢失历史,能接受就没问题。
galenjiang
204 天前
唯一的区别是生成下个 commit 记录的 first parent commit 是 master 上的最后一个 commit 还是 feature 上的最后一个 commit.用了 fast forward merge 就是没有区别
nekochyan
204 天前
我比较喜欢 feature 开发完成后,master rebase 到 feature ,然后 feature 再 merge 到 master ,冲突都在 feature 上解决了
MingLovesLife
204 天前
@clovershell 建议撤回,等会有人举报你
guanzhangzhang
204 天前
feature 上和别人不共用就
git pull --rebase origin master
git push -f
galenjiang
204 天前
假如用了 gitlab 或者 GitHub 冲突了,会有提示,按照提示操作就是最佳的方案。
clovershell
204 天前
@MingLovesLife #46 为啥, 违反论坛规则了?
lc5900
204 天前
我选择 rebase 过来再提交,自己的功能分支随便玩,master 上的代码也是稳定的,问题不大
inkmulberry
204 天前
@clovershell #38 是的,而且是死刑
jqtmviyu
204 天前
插眼. 我一直都是用的方法 1. 等大佬们讲下有啥更好的方法.
0o0o0o0
204 天前
@MingLovesLife 提示:v 站没有办法自己删除任何帖子和评论,只要发出来的就永远留存了
@clovershell v2 禁止发任何 AI 输出的评论,注意是 禁止任何,发了就会被删号,除非本身是讨论 AI 输出相关的(不确定)
规则详情见: https://ex.noerr.eu.org/about
具体例子见: https://fast.ex.noerr.eu.org/t/1112516
HB9527
204 天前
建议换个 LD
Rickkkkkkk
204 天前
38 楼 @Livid
nicholasxuu
204 天前
正常是第一种,第二种是多人多个更新,一起上公交车(中间 PR ),去坐火车(正式发布)的方式。
如果只有一个分支要更新发布,脱裤子放屁。。。
gaeco
204 天前
@clovershell #49 一会号没了
hfl1995
204 天前
还有个建议:

多关注提交通知,主分支有更新,就及时合并的你自己的分支,这样几乎遇不到冲突
不要在功能分支改别人写的基础代码,有修改需求,让代码的原作者自己改了提交,然后你再合过来
gaeco
204 天前
直接开发分支变🐔(基),然后合并到 master
qishua
204 天前
@xfmaa 我觉得你说的对+有道理

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1116014

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX