git-flow 是一个 git 扩展集,按 Vincent Driessen 的分支模型提供高层次的库操作。使我们的git分支管理更加清晰明了。解决日常开发的流程上的问题。
![](https://img.haomeiwen.com/i5406242/54a5562b4f262232.png)
我们可以使用不同功能的分支:
- 生产 master
- 开发分支 develop
- 功能分支 feature
- 发布分支 release
- 修复分支 hotfix
生产 master 这是我们的稳定版本的线上分支
开发分支develop 这是我们的主开发分支
功能分支feature 从develop迁出 最终合并回develop
发布分支release 从develop迁出,用于每个迭代版本的分支。最终合并回develop和master。该分支分支命名约定:release-*
修复分支 hotfix 从master迁出,用于修复线上的bug。最终合并回develop和master。该分支命名约定:hotfix-*
如何使用:
首先创建一个功能分支,开始使用新功能时,请从develop分支分支。
git checkout -b myfeature develop
我们创建一个发布分支,从develop迁出
git checkout -b release-1.0.0 develop
当我们本次迭代的功能开发好之后,将我们的feature分支合并到release-1.0.0分支上。
git checkout release-1.0.0
git merge myfeature
当我们的本次迭代测试完成以后,将该release分支分别合并到develop和master分支。
git checkout master
git merge release-1.0.0
git tag -a 1.0.0 // 我们可以在master分支上打一个tag
git checkout develop
git merge release-1.0.0
如果我们遇到线上的bug 需要紧急的时候,我们可以创建hotfix分支来修复,记得从master迁出,完成之后分别合并到master和develop
到此 我们的一个迭代的开发就完成了
网友评论