Git Flow印象

Git Flow印象

原文地址:http://www.jiangyouxin.net/2013/02/11/git_flow.html

在github的项目主页上是这么介绍的:(git flow is) Git extensions to provide high-level repository operations for Vincent Driessen’s branching model. 这个Vincent Driessen’s branching model的原文在http://nvie.com/posts/a-successful-git-branching-model/

简单翻译一下。git flow是用来实现某种分支模型上的操作的

两个主(main)分支:
master:指向当前已发布版本
develop:指向当前开发状态

三类支持(support)分支:
feature分支:从develop创建,用于某个功能点的开发。完成时自动合并到develop。
release分支:从develop创建,用于某个版本发布前的提测和修改BUG。完成时自动打TAG,合并到master和develop。
hotfix分支:从master创建,用于已发布版本的快速BUG FIX,完成时自动打TAG,合并到master和develop(若当前存在release分支,则合并到该分支而不是develop)

“创建”和“完成”操作都由对应的git flow命令来实现。命令很容易记忆:
git flow <feature|release|hotfix> <start|finish> <name>

下面这张图是从原文COPY出来的:

Git Flow印象

使用git flow,每一个feature独立在支线开发,完成后再合并到主线;发布版本在支线完成,与功能开发可以并行;打TAG的同时Merge修改回主线。以上这些都深得我心,而且它是靠工具(而不是规章制度)来实现的,对程序员比较友好。

git flow把所有的发布版本串联在master分支上,很好地维护了它们之间的偏序关系(master分支上的每一次提交都对应一个发布版本),这样可以很方便将master作为“卖主分支”来管理OEM;与topgit等结合也会很方便。

git flow的hotfix分支只能基于master,也就是最新的发布版本。如果要基于更老一些的发布版本去擦屁股,就得手工操作了:从旧的TAG上创建branch,完事后打新TAG,然后合并回develop(或者当前release),注意这时候就不能合并到master了。

转载于:https://my.oschina.net/jiangyouxin/blog/108507

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/110217.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 史上最全面Java面试汇总(面试题+答案)

    JAVA面试精选【Java基础第一部分】JAVA面试精选【Java基础第二部分】JAVA面试精选【Java基础第三部分】JAVA面试精选【Java算法与编程一】JAVA面试精选【Java算法与编程二】Java高级工程师—面试(1)Java高级工程师—面试(2)Java高级工程师—面试(3)BAT/网易等面试心得阿里历年面试题Java中高级面试题数据…

  • jdbc java_Springdata

    jdbc java_Springdata刚进公司,人生地不熟,偷偷藏着本《mybatis入土为安》,以为可以靠mybatis混的轻松点,谁知天有不测风云,大家用的是JPA。我这个小白没有听说过,全英文名叫,就是java持久化api,是SUN公司推出的一套基于的规范。持久化想必如雷贯耳,都0202年了,谁还不用个持久化框架啊,举起mybatis。ORM呢?全英文名为:对象关系映射,简单来说为了不用JDBC那一套原始方法来操作数据库,ORM框架横空出世(mybatis、hibernate等等)。…

    2022年10月20日
  • windows端口占用查看命令_win7端口怎么查看

    windows端口占用查看命令_win7端口怎么查看计算机“端口”是英文port的义译,可以认为是计算机与外界通讯交流的出口。其中硬件领域的端口又称接口,如:USB端口、串行端口等。软件领域的端口一般指网络中面向连接服务和无连接服务的通信协议端口,是一种抽象的软件结构,包括一些数据结构和I/O(基本输入输出)缓冲区。说白了,我们在计算机的任何操作都在有意无意的使用着计算机的各个端口,下面列出了计算机的常用端口。做个备忘。0端口:无效端口

  • 线代复习知识点大纲

    线代复习知识点大纲

  • awaiting production checklist_解题神器app

    awaiting production checklist_解题神器appA7——MissingFunctionalLevelAccessControl应用层访问控制缺失。DirectoryTraversal-Directorieslow未对输入的目录进行限制,可以访问任意目录。http://localhost/bwapp/directory_traversal_2.php?directory=documents/../../../…

  • ▲ Android 自定义 Loading加载动画

    ▲ Android 自定义 Loading加载动画

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号