TMD,我的 branch 又被同事搞烂了,我都不知道怎么修

2019-10-15 01:45:27 +08:00
 ericgui

我们组长的思维方式是,你们各位同时做不同的 feature,一个 feature 一个 branch

然后做完了就提 pr,review 过了就 merge 到 dev 分支。

那么,如果你的 branch 还没做完,你就应该及时合并 dev,拿到最新的 feature

已经发生无数次了,我的 branch 被 dev 分支搞乱,结果我要花大量的时间来解决冲突,甚至修 dev 分支的 bug。 这 TMD,岂不是谁动作快,谁就可以把烂摊子甩给别人?

烦死了

大家有什么好的解决方案吗?

13186 次点击
所在节点    程序员
81 条回复
avenger
2019-10-15 07:19:36 +08:00
没有单元测试的锅
bleutee
2019-10-15 07:50:58 +08:00
當然是 rebase 啊。
流程上我覺得沒問題
zyqhi
2019-10-15 07:54:08 +08:00
不同 feature 之间不应该尽量正交吗?
pkookp8
2019-10-15 07:54:43 +08:00
rebase 可以把 dev 分支的内容合并到你的分支
解决冲突后如果需要可以 merge,没需要继续改就行了
0x400
2019-10-15 07:55:35 +08:00
深入贯彻 git 之父的思想😂
Lin0936
2019-10-15 07:58:21 +08:00
这种我一般 rebase
sonxzjw
2019-10-15 08:20:22 +08:00
要我就以其人之道还之其人之身
just do it
rosu
2019-10-15 08:26:44 +08:00
这已经不是 git 的范畴了。任何 git-flow 都无法杜绝“他改了一个全局的东西,然后也没测试,就直接 merge 了,就不管了“。
这个上游有 bug,下游肯定受影响啊。不过 merge 还是 rebase,都会把 bug 合并进来。
chinese_zmm
2019-10-15 08:47:30 +08:00
@CEBBCAT 赞同,留下证据,找组长讨论解决
ArtIsPatrick
2019-10-15 08:55:35 +08:00
应该测完了再往一个分支上合,而不是 review 完就合。保证你只合测过的可以上线的代码。
sgissb1
2019-10-15 09:00:50 +08:00
这属于分工边界不清晰的问题。用分支来管理特性边界是错误的做法。分工上边界清晰了,就算再同一个分支里面开发也不存在类似问题。
xuanbg
2019-10-15 09:05:20 +08:00
只有两个分支的同一个文件都有修改,合并才会有冲突,所以理想情况下是不允许两个分支同时去修改同一个文件的。你们组长的分支策略没错,但不同 feature 居然会修改很多相同文件,显然是项目的模块划分有很大的问题。
passerbytiny
2019-10-15 09:07:40 +08:00
一个功能一个分支的多分支开发,请每天首先从主分支向个人分支 rebase,就像以前 SVN 的每日 update 一样。这样你就可以尽早的发现冲突,虽然不能减少总的冲突解决时间,但是能让你的工作计划更合理。

记得每日 rebase 的时候截图一下冲突情况,对于多次发生的同一种冲突要及时上报。
Salvation
2019-10-15 09:14:03 +08:00
@ericgui 他测了对自己的影响,dev 的代码在他自己的逻辑里面是 OK 的?那这个时候 dev 的代码到底是 ok 的吗?是说你的代码合并上去之后有问题,还是这个时候 dev 的代码已经有问题了?
yogogo
2019-10-15 09:19:29 +08:00
改全局的东西不相互通知下吗
wizardoz
2019-10-15 09:27:04 +08:00
你们都不写单元测试的吗?
ericgui
2019-10-15 09:27:17 +08:00
@Salvation dev.不 ok 啊,但没有单元测试啊
sliwey
2019-10-15 09:30:14 +08:00
只要你手快,冲突就影响不了你
winterbells
2019-10-15 09:30:42 +08:00
这种弱智就往上报啊
我这边也有个,每次推一堆 bug,找组长找老板

谁污染,谁治理。谁开发,谁保护😋
jzphx
2019-10-15 09:32:12 +08:00
分支策略没啥毛病,有问题的是你那同事的业务水平

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

https://tanronggui.xyz/t/609333

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

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

© 2021 V2EX