功能分支工作流仍然用中央仓库,并且 master
分支还是代表了正式项目的历史。
但不是直接提交本地历史到各自的本地 master
分支,开发者每次在开始新功能前先创建一个新分支。
功能分支应该有个有描述性的名字,比如 animated-menu-items
或 issue-#1061
,这样可以让分支有个清楚且高聚焦的用途。
在 master
分支和功能分支之间,Git
是没有技术上的区别,所以开发者可以用和集中式工作流中完全一样的方式编辑、暂存和提交修改到功能分支上。
另外,功能分支也可以(且应该)push
到中央仓库中。这样不修改正式代码就可以和其它开发者分享提交的功能。
由于 master
是仅有的一个『特殊』分支,在中央仓库上存多个功能分支不会有任何问题。当然,这样做也可以很方便地备份各自的本地提交。