git flow入门使用
git flow入门使用
我是小强 发表于4年前
git flow入门使用
  • 发表于 4年前
  • 阅读 233
  • 收藏 7
  • 点赞 0
  • 评论 1

腾讯云 技术升级10大核心产品年终让利>>>   

原文地址:http://www.jiangyouxin.net/2013/02/11/git_flow.html

在github的项目主页上是这么介绍的:(git flow is) Git extensions to provide high-level repository operations for Vincent Driessen's branching model. 这个Vincent Driessen's branching model的原文在http://nvie.com/posts/a-successful-git-branching-model/

简单翻译一下。git flow是用来实现某种分支模型上的操作的

两个主(main)分支:
master:指向当前已发布版本
develop:指向当前开发状态

三类支持(support)分支:
feature分支:从develop创建,用于某个功能点的开发。完成时自动合并到develop。
release分支:从develop创建,用于某个版本发布前的提测和修改BUG。完成时自动打TAG,合并到master和develop。
hotfix分支:从master创建,用于已发布版本的快速BUG FIX,完成时自动打TAG,合并到master和develop(若当前存在release分支,则合并到该分支而不是develop)

“创建”和“完成”操作都由对应的git flow命令来实现。命令很容易记忆:
git flow <feature|release|hotfix> <start|finish> <name>

下面这张图是从原文COPY出来的:

使用git flow,每一个feature独立在支线开发,完成后再合并到主线;发布版本在支线完成,与功能开发可以并行;打TAG的同时Merge修改回主线。以上这些都深得我心,而且它是靠工具(而不是规章制度)来实现的,对程序员比较友好。

git flow把所有的发布版本串联在master分支上,很好地维护了它们之间的偏序关系(master分支上的每一次提交都对应一个发布版本),这样可以很方便将master作为“卖主分支”来管理OEM;与topgit等结合也会很方便。

git flow的hotfix分支只能基于master,也就是最新的发布版本。如果要基于更老一些的发布版本去擦屁股,就得手工操作了:从旧的TAG上创建branch,完事后打新TAG,然后合并回develop(或者当前release),注意这时候就不能合并到master了。

标签: git
共有 人打赏支持
粉丝 13
博文 64
码字总数 17573
评论 (1)
jqbmaster
图挺好看
×
我是小强
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: