【GIT】Git Flow最佳实践
Git Flow 工作流一共包含五种分支:
两个长期分支:
主分支 master:用于存放对外发布的版本,任何时候在这个分支拿到的,都是稳定的分布版
开发分支 develop:用于日常开发,存放最新的开发版
创建Develop分支的命令: git checkout -b develop master
将Develop分支发布到Master分支的命令:
# 切换到Master分支
git checkout master
# 对Develop分支进行合并
git merge --no-ff develop
三个临时性分支:
1 .功能(feature)分支:新功能分支,一般一个新功能对应一个分支,功能分支的名字,可以采用 feature-* 的形式命名。
创建一个功能分支:
git checkout -b feature-x develop
开发完成后,将功能分支合并到 develop 分支:
git checkout develop
git merge --no-ff feature-x
删除 feature 分支:
git branch -d feature-x
2 . 预发布(release)分支:发布分支是从 Develop 分支上面分出来的,用于发布测试版本,测试完后最终需要合并进 Develop 和 Master 分支。它的命名,可以采用release-*
的形式。
创建一个预发布分支:
git checkout -b release-1.2 develop
确认没有问题后,合并到 master 分支:
git checkout master
git merge --no-ff release-1.2
git tag -a 1.2 ( 对合并生成的新节点,做一个标签 )
再合并到 develop 分支:
git checkout develop
git merge --no-ff release-1.2
最后,删除预发布分支:
git branch -d release-1.2
3. 修补bug(fixbug)分支:用于修复线上版本出现的 Bug 时创建的,基于 Master 分支创建。修补结束以后,再合并进 Master 和 Develop 分支。它的命名,可以采用 fixbug-* 的形式。
创建一个修补 bug 分支:
git checkout -b fixbug-0.1 master
修补结束后,合并到 master 分支:
git checkout master
git merge --no-ff fixbug-0.1
git tag -a
再合并到 develop 分支:
git checkout develop
git merge --no-ff fixbug-0.1
最后,删除"修补 bug 分支":
git branch -d fixbug-0.1
这三种分支都属于临时性需要,使用完以后,应该删除,使得代码库的常设分支始终只有 Maste r和 Develop。
Git-Flow 工具使用
安装方法:brew install git-flow
基本使用:
初始化:
git flow init
开始新Feature:
git flow feature start MYFEATURE
Publish一个Feature(也就是push到远程):
git flow feature publish MYFEATURE
获取Publish的Feature:
git flow feature pull origin MYFEATURE
完成一个Feature:
git flow feature finish MYFEATURE
开始一个Release:
git flow release start RELEASE [BASE]
Publish一个Release:
git flow release publish RELEASE
发布Release:
git flow release finish RELEASE
别忘了git push --tags
开始一个Hotfix:
git flow hotfix start VERSION [BASENAME]
发布一个Hotfix:
git flow hotfix finish VERSION
最新文章
- BZOJ 1176: [Balkan2007]Mokia
- il c井
- 解决erlang节点启动失败报[";inet_tcp";,econnrefused]的问题
- 在Servlet中出现一个输出中文乱码的问题(已经解)。
- Oracle 删除数据后释放数据文件所占磁盘空间
- ARM Linux 如何--注册和触发--软中断
- SharePoint 2010 母版页制作的简单介绍
- devi into python 笔记(七)locals与globals 字典格式化字符串 字符集
- 【HDOJ】3592 World Exhibition
- Html----常见标签
- CSS圆角样式
- Ganglia 权威指南-安装Ganglia过程
- 项目实战2—LVS负载均衡
- 算法训练 K好数
- 【BZOJ】1969: [Ahoi2005]LANE 航线规划
- sessionStorage:写入记事本功能[内容写入sessionStorage中,读取,删除]
- propertychange事件导致的IE浏览器堆栈溢出
- 11.Django|中间件
- ajax的基础
- 【Spring学习笔记-MVC-6】SpringMVC 之@RequestBody 接收Json数组对象