该内容由联想乐窗团队张敬佩整理
内容摘自网上,如有侵权,联系删除
Git-flow 工作流介绍
主要内容
本文主要分主要包括以下几个部分的内容
- 集中式工作流
- 功能分支工作流
- 功能分支工作流的问题
- git flow 的分支模型介绍
- git flow 的工作方式
- git flow 的操作命令
- smartgit 中使用 git flow
- 命令行使用 git flow
集中式工作流
所有的功能开发与修改都在 master 分支上进行的。开发者开始先克隆中央仓库。在自己的项目拷贝中像SVN一样的编辑文件和提交修改;但修改是存在本地的,和中央仓库是完全隔离的。开发者可以把和上游的同步延后到一个方便时间点。
在开发者提交自己功能修改到中央库前,需要先fetch在中央库的新增提交,rebase自己提交到中央库提交历史之上。
这样做的意思是在说,我要把自己的修改加到别人已经完成的修改上。
最终的结果是一个完美的线性历史。
如果本地修改和上游提交有冲突,Git 会暂停 rebase 过程,给你手动解决冲突的机会。
功能分支工作流
功能分支工作流以集中式工作流为基础,不同的是为各个新功能分配一个专门的分支来开发。功能分支工作流背后的核心思路是所有的功能开发应该在一个专门的分支,而不是在 master 分支上。
这个隔离可以方便多个开发者在各自的功能上开发而不会弄乱主干代码。
功能分支应该有个有描述性的名字,比如animated-menu-items或issue-#1061,这样可以让分支有个清楚且高聚焦的用途。
功能分支工作流的问题
git的branch非常的强大,但是git本身并没有对如何管理branch做出建议. 多人在同一仓库下,代码的
协作问题会越来越突出. 首先来看看我们之前项目的分支。