Git Flow 是一种使用 Git 开展项目的工作流程
$ brew install git-flow
$ port install git-flow
$ apt-get install git-flow
安装 git-flow, 你需要 wget 和 util-linux。
$ wget -q -O - --no-check-certificate https://github.com/nvie/gitflow/raw/develop/contrib/gitflow-installer.sh | bash
git flow init
下面操作创建了一个新的 feature 分支,并切换到该分支
git flow feature start MYFEATURE
完成开发新特性。这个动作执行下面的操作: 1. 合并 MYFEATURE 分支到 'develop' 2. 删除这个新特性分支 3. 切换回 'develop' 分支
git flow feature finish MYFEATURE
你是否合作开发一项新特性? 发布新特性分支到远程服务器,所以,其它用户也可以使用这分支。
git flow feature publish MYFEATURE
取得其它用户发布的新特性分支。
git flow feature pull origin MYFEATURE
通过下面命令追溯远端上的特性
git flow feature track MYFEATURE
git flow release start RELEASE [BASE]
创建 release 分支之后立即发布允许其它用户向这个 release 分支提交内容是个明智的做法。命令十分类似发布新特性:
git flow release publish RELEASE
(你可以通过 git flow release track RELEASE 命令追溯远端的 release 版本)
完成 release 版本是一个大 git 分支操作。它执行下面几个动作: 1. 归并 release 分支到 'master' 分支。 2. 用 release 分支名打 Tag 3. 归并 release 分支到 'develop' 4. 移除 release 分支。
git flow release finish RELEASE
不要忘记使用git push --tags将tags推送到远端
紧急修复来自这样的需求:生产环境的版本处于一个不预期状态,需要立即修正。有可能是需要修正 master 分支上某个 TAG 标记的生产版本。
像其它 git flow 命令一样, 紧急修复分支开始自
$ git flow hotfix start VERSION [BASENAME]
VERSION 参数标记着修正版本。你可以从 [BASENAME]开始,[BASENAME]`为finish release时填写的版本号
当完成紧急修复分支,代码归并回 develop 和 master 分支。相应地,master 分支打上修正版本的 TAG。
git flow hotfix finish VERSION