【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 MYFEATUREPublish一个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
【GIT】Git Flow最佳实践的更多相关文章
- [转载]理解 Git 分支管理最佳实践
原文 理解 Git 分支管理最佳实践 Git 分支有哪些 在进行分支管理讲解之前,我们先来对分支进行一个简单的分类,并明确每一类分支的用途. 分支分类 根据生命周期区分 主分支:master,deve ...
- Git工作流程最佳实践总结
Git作为一个目前非常流行的版本管理工具,深受开发者的喜爱.那么怎样才能将Git的作用发挥的更好呢?我根据实际的项目经验,归纳总结了以下Git工作流的最佳实践.这里所谓的最佳,是经过多次项目经验后,根 ...
- 应用Git Flow—Git团队协作最佳实践
规范的Git使用 Git是一个很好的版本管理工具,不过相比于传统的版本管理工具,学习成本比较高. 实际开发中,如果团队成员比较多,开发迭代频繁,对Git的应用比较混乱,会产生很多不必要的冲突或者代码丢 ...
- Git Flow——Git团队协作最佳实践
规范的Git使用 Git是一个很好的版本管理工具,不过相比于传统的版本管理工具,学习成本比较高. 实际开发中,如果团队成员比较多,开发迭代频繁,对Git的应用比较混乱,会产生很多不必要的冲突或者代码丢 ...
- Git Flow,Git团队协作最佳实践
规范的Git使用 Git是一个很好的版本管理工具,不过相比于传统的版本管理工具,学习成本比较高, 实际开发中,如果团队成员比较多,开发迭代频繁,对Git的应用比较混乱,会产生很多不必要的冲突或者代码丢 ...
- 高效团队的gitlab flow最佳实践
当前git是大部分开发团队的首选版本管理工具,一个好的流程规范可以让大家有效地合作,像流水线一样有条不紊地进行团队协作. 业界包含三种flow: Git flow Github flow Gitlab ...
- git学习------>Git 分支管理最佳实践
ps:本文转载于 : https://www.ibm.com/developerworks/cn/java/j-lo-git-mange/index.html Git 是目前最流行的源代码管理工具.大 ...
- 【转】Git代码提交最佳实践
GIT Commit Good Practice The following document is based on experience doing code development, bug ...
- CI Weekly #18 | flow.ci iOS 最佳实践出炉,正式支持 Git@OSC 构建
如大家所期待,flow.ci 现已支持开源中国的代码仓库 - 码云,可以直接构建 Git@OSC 的项目了,点击创建项目-选择代码仓库-选择码云-绑定 OSChina 账户-选择要构建项目,教程看这里 ...
随机推荐
- nginx 405 not allowed问题的解决
转载自: http://www.linuxidc.com/Linux/2012-07/66761.htm Apache.IIS.Nginx等绝大多数web服务器,都不允许静态文件响应POST请求,否 ...
- C语言 · 十六进制转八进制
基础练习 十六进制转八进制 时间限制:1.0s 内存限制:512.0MB 锦囊1: 使用二进制. 问题描述 给定n个十六进制正整数,输出它们对应的八进制数. 输入格式 输入的 ...
- C语言 · 求指数
算法训练 5-2求指数 时间限制:1.0s 内存限制:256.0MB 问题描述 已知n和m,打印n^1,n^2,...,n^m.要求用静态变量实现.n^m表示n的m次方.已知n和m, ...
- rhel6.5 虚拟机的安装
一.准备: 在网上下载 rhel-server-6.5-x86_64-dvd.iso 并在 非 C盘下创建一个目录 ,比如:E:\VM\rhel_test 二. 创建虚拟机 进入 VMware , 点 ...
- oops_根据epc定位linux_kernel_panic位置
韩大卫@吉林师范大学 2014.12.10 转载请表明出处 ***************************************************** 关于内核报错 “Unable t ...
- 基于Struts2.3.x+Spring3.2.x+Hibernate4.2.x+EasyUI1.3.4+Maven架构的示例程序
基于Struts2.3.x+Spring3.2.x+Hibernate4.2.x+EasyUI1.3.4+Maven架构的示例程序 不知道为什么,保存的时候显示有一个连接为违禁内容,可能是…………. ...
- 又一个错误" Fatal error: Call to undefined function myabp_print_screenshot_all() "
xxx ( ! ) Fatal error: Call to undefined function myabp_print_screenshot_all() in D:\wamp\www\wp-con ...
- 防火墙导致MySQL无法访问的问题解决案例
问题 数据库总是访问不了以致不得不反反复复的重启MySQL数据库. 但是重启的效果并不明显,重启10几分钟后问题依然出现.导致前端用户难以正常访问网站.另外他们还通过google,百度搜索,怀疑是数据 ...
- JQuery _ 定时器(jQuery Timers) 学习
jQuery Timers插件地址: http://plugins.jquery.com/project/timers JQuery Timers应用知识 提供了三个函式 1. everyTime(时 ...
- Windoows窗口程序四
子窗口的创建 .创建时要设置父窗口句柄 .创建风格要增加WS_CHILD|WS_VISIBLE HWND CreateChild(LPSTR lpClassName,LPSTR lpWndName,H ...