Git Flow和Github Flow

2013-03-07 21:56:22 +08:00
 hooopo
http://hooopo.writings.io/articles/fe2b0791
6099 次点击
所在节点    git
12 条回复
amoblin
2013-03-07 22:02:56 +08:00
好文章!打算有机会实践一下Github Flow。
shanks
2013-03-08 00:22:59 +08:00
up主的网站UI挺不错的样子,求问怎么实现的?
clowwindy
2013-03-08 00:39:40 +08:00
加一点比较好,一旦 master 接受一个 PR,其它 PR 要重新 rebase 之后才能被接受,保证 merge PR 是纯 fast forward 的。
hooopo
2013-03-08 00:55:28 +08:00
@clowwindy 一般merge PR都是no-ff的哇 为什么要fast forward
clowwindy
2013-03-08 09:39:00 +08:00
@hooopo 把 merge 责任交给分支开发者,保持 master 是直的
hooopo
2013-03-08 10:09:44 +08:00
@clowwindy master分支是直的没有任何意义。master分支应该能体现各个功能的并行开发状态,这样容易追踪bug和直观看出哪些commit属于哪个功能。还有一个优点是可以方便的revert/reset一组相关commit。

所以 merge到master/develop分支一定要加--no-ff参数。

rebase或squash一般在本地分支比较好,让本来应该是直的线索是直的。
Saito
2013-03-08 10:19:29 +08:00
@hooopo +1024
hooopo
2013-03-08 10:27:23 +08:00
@Saito 好不容易在v2ex找到发帖按钮。。
joshokn
2013-03-08 10:38:37 +08:00
尝试过gitflow一段时间,感觉将merge这种事情交给工具做真不靠谱。尤其是多branch同时开工的情况下。如果你的环境很简单,确实可以省些力气
clowwindy
2013-03-08 18:25:47 +08:00
@hooopo pr rebase 之后 diff 只包含这个功能,不像 merge 那样 diff 没法看
hooopo
2013-03-11 01:15:21 +08:00
@clowwindy 不存在你说的merge diff无法看的问题啊 一个PR包含的更改就是从master fork出分支状态到merge进master状态,看diff就是看fork点和merge点的变更。

如果每个分支上的开发者都需要关心其他分支的变更,并且rebase和解决冲突,这样就把并行开发变成了线性开发了。
WarWithinMe
2013-03-11 09:57:59 +08:00
想问一下,为了确保master总是能deploy,测试人员总是需要将master合并到分支dev中,然后进行测试吗?
如果这个测试期间有其他分支合并到master的话,那么当前的dev分支怎么办?再合并然后重新进行测试?

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

https://www.v2ex.com/t/62256

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

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

© 2021 V2EX