Git Flow分支模型知识点汇总

主要包括以下几个关键词:

  • Features
  • Make a release
  • Hotfixes

About

✨git-flow是一个用来进行高级repo操作的git 扩展集合,它是Vincent Driessen分支模型的一种实现。
关键词:branch 模型

Basic tips

✨Git flow提供了非常好的命令行和输出,可以认真阅读去思考到底发生了什么...
✨OSX和Windows客户端Sourcetree是一个实现了git-flow的非常好用的git客户端。
✨Git-flow是以一个合并解决方案。(merge based solution)
✨GIt-flow不会重新设置功能分支。

关键词:Sourcetree 分支合并方案 branch不可重置
补充:webstorm下的git-flow插件叫做Git Flow Integration

Setup

✨OSX $ brew install git-flow-avh
✨Linux $ apt-get install git-flow
✨Windows $ wget -q -O - --no-check-certificate https://raw.github.com/petervanderdoes/gitflow-avh/develop/contrib/gitflow-installer.sh install stable | bash

Getting started

✨Git flow需要初始化,这样repo才会引入git-flow分支模型。
✨在git repo目录下初始化,git flow init
✨输入git flow init之后,需要按照对方的stdout回答一些问题,问题回答完后,git-flow就初始化好了

Features

✨为新版本开发新特性
✨仅仅存在developers repo
✨从branch分支开始写新feature

  • 开发新特性
    git flow feature start MYFEATURE
    ✨上面的命令基于develop创建一个新的feature分支;切换到新feature分支

  • 结束开发特性
    git flow feature finish MYFEATURE
    ✨上面命令会执行以下操作,合并MYFEATURE到develop;删除特性分支;切换到develop分支

  • 发布一个新特性
    git flow feature publish MYFEATURE

  • 获得一个已发布的特性
    git flow feature pull origin MYFEATURE
    ✨上面命令可以获得其他用户发布的新feature

  • 追踪一个使用中的特性
    git flow feature track MYFEATURE

Make a ralease

✨支持发布预生产
✨允许微小bug修复并且为release准备meta-data

  • 开发一个版本
    git flow release start RELEASE [BASE]
    ✨从develop分支创建出一个release分支
    ✨可以选择性的提交一个sha-1哈希值标识新版本。
    ✨提交必须在'develop'分支。

git flow release publish RELEASE
✨创建后允许其他开发者提交需要发布release brach。

  • 使用命令追踪一个远程release
    git flow release track RELEASE

  • 完成一个release
    git flow release finish RELEASE
    完成一个release的发布需要经历以下几步
    ✨合并release分支到master分支
    ✨为release打tag
    ✨隐式地合并release分支到develop分支
    ✨删除release分支
    ✨推送tags:git push --tags

Hotfixes

✨Hotfix是为了快速解决线上版本的bug而存在的
✨可能从标记生产环境版本的tag中分离出单独的分支。

  • 开始git flow hotfix
    git flow hotfix start VERSION [BASENAME]
    ✨VERSION参数标记了hotfix的版本名称。
    ✨可选地我们可以指定一个basename。

  • 完成一个hotfix
    git flow hotfix finish VERSION
    ✨完成一个hotfix后,它会合并回develop分支和master分支。master分支上会打上hotfix的版本号。

Commands

Backlog

✨'support'特性还在实验中,可以根据建议方式使用

参考资料:https://danielkummer.github.io/git-flow-cheatsheet/index.html

期待和大家交流,共同进步,欢迎大家加入我创建的与前端开发密切相关的技术讨论小组:

  • SegmentFault技术圈:ES新规范语法糖
  • SegmentFault专栏:趁你还年轻,做个优秀的前端工程师
  • 知乎专栏:趁你还年轻,做个优秀的前端工程师
  • Github博客: 趁你还年轻233的个人博客
  • 前端开发QQ群:660634678
  • 微信公众号: 人兽鬼 / excellent_developers


努力成为优秀前端工程师!

你可能感兴趣的:(Git Flow分支模型知识点汇总)