GitFlow 是由 Vincent Driessen 提出的⼀个 git操作流程标准。包含如下⼏个关键分⽀:
GitFlow 的优势有如下⼏点:
- 并⾏开发:GitFlow 可以很⽅便的实现并⾏开发:每个新功能都会建⽴⼀个新的 feature 分⽀,从⽽和已经完成的功能隔离开来,⽽且只有在新功能完成开发的情况下,其对应的 feature 分⽀才会合并到主开发分⽀上(也就是我们经常说的 develop 分⽀)。另外,如果你正在开发某个功能,同时⼜有⼀个新的功能需要开发,你只需要提交当前 feature 的代码,然后创建另外⼀个 feature 分⽀并完成新功能开发。然后再切回之前的 feature 分⽀即可继续完成之前功能的开发。
- 协作开发:GitFlow 还⽀持多⼈协同开发,因为每个 feature 分⽀上改动的代码都只是为了让某个新的 feature可以独⽴运⾏。同时我们也很容易知道每个⼈都在⼲啥。
- 发布阶段:当⼀个新 feature 开发完成的时候,它会被合并到 develop 分⽀,这个分⽀主要⽤来暂时保存那些还没有发布的内容,所以如果需要再开发新的 feature ,我们只需要从 develop 分⽀创建新分⽀,即可包含所有已经完成的 feature 。
- ⽀持紧急修复:GitFlow 还包含了 hotfix 分⽀。这种类型的分⽀是从某个已经发布的 tag 上创建出来并做⼀个紧 急的修复,⽽且这个紧急修复只影响这个已经发布的 tag,⽽不会影响到你正在开发的新 feature 。
更多请参考:Git 工作流程