持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第2天,点击查看活动详情
git flow是一种版本发布方案,通过将git操作组合起来完成版本发布。
安装
mac
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
使用
git flow init:初始化现有的git仓库git flow feature start FEATURE:创建基于develop的特性分支,并切换到该特性分支上git flow feature finish FEATURE:合并 FEATURE分支到develop分支,删除FEATURE分支,切换到develop分支git flow feature publish FEATURE:发布分支到远程服务器,其他用户也可以使用该分支git flow feature pull origin FEATURE:取得其他用户发布的新特性分支git flow release start RELEASE:从 develop分支开始创建一个release 分支。git flow release finish RELEASE:合并release分支到master分支,用release分支名打TAG,合并release分支到develop,移除release分支。
分支作用
- master 包含产品代码。不能直接工作在 master 分支上,而是在其他指定的,独立的特性分支中。不直接提交改动到 master 分支上也是很多工作流程的一个共同的规则。
- develop 是进行任何新的开发的基础分支。当开始一个新的功能分支时,它将是开发的基础分支。另外,该分支也汇集所有已经完成的功能,并等待被整合到 master 分支中。
这两个分支是长期分支,存活在项目的整个生命周期中,其他分支例如新特性分支或者发布分支仅仅是临时存在的,完成任务后会被删除。
配合约定式提交
约定式提交是一种用于给提交信息增加人机可读含义的规范
提交说明的结构如下所示:
<类型>[可选的作用域]: <描述>
[可选的正文]
[可选的脚注]
提交说明包含了下面的元素
- fix: 类型 为
fix的提交表示在代码库中修复了一个 bug - feat: 类型 为
feat的提交表示在代码库中新增了一个功能 - BREAKING CHANGE: 在可选的正文或脚注的起始位置带有
BREAKING CHANGE:的提交,表示引入了破坏性 API 变更