我们没在用,最主要的原因是分支模型不匹配。
团队旧有的习惯是 web app 项目每天 release 至少一次,release 之前就上 staging 测试。即使人为地区分出 develop / master / release 这么多长线分支,彼此间的代码也往往是很快就同步一致了。当你只有一个长线分支需要考虑的时候,问题本身就简单得多。
最终我们采用的流程是:中央仓库只有一个 master 分支,各个开发者从自己的 fork 上发起 pull request,code review 通过就 merge。不约定 branch 名字,也不限定每次 PR 提交的内容,只要 code review 时满意,其它的都无所谓。
花点时间多调研下,选择适合自己的才好。虽然 Git Flow 在博客圈声音很大,对于有些项目确实也很合适,但我们最终还是没去用。Srsly,“开始写代码之前先得按照分类去建 branch”这件事让我觉得实在是浑身不爽。