zoukankan      html  css  js  c++  java
  • Git笔记 | GitFlow

      GitFlow工作流定义了一个围绕项目发布的严格分支模型,它为不同的分支分配了明确的角色,并定义分支之间何时以及如何进行交互。是一套规范、易于管理的git使用流程,解决git分支众多,管理不便的问题。
      【当然,我们自己在做git工作流程管理的时候,也可以制定一套适合自身项目的、完善的分支管理方式。】

    GitFlow的分支管理流程图

    图片来源 A Successful Git Branching Model


      GitFlow 设计的主要分支为 master 、 develop;在主要分支之外,开发团队可以使用各种支持分支来协助团队完成项目的开发,这些分支只是为了完成某些特定的功能或者特性,在完成任务并合并到develop分支之后,就可以删除。这些分支的不同类型分为feature分支、release分支、hotfix分。

    1.功能(feature)分支:可以从develop分支创建,必须合并回develop分支;
       分支命名约定:没有要求,但不要和主要分支(master、develop)或者发布分支(release-*)或修补分支(hotfix-*)冲突。例如 feature- save-department.
    创建功能分支命令如下:

    # 从develop分支创建一个新的分支myfeature ,并切换到myfeature分支上
    $ git checkout -b myfeature develop
    

    合并功能分支到develop分支上

    # 切换到develop分支上
    $ git checkout develop
    # 合并myfeature分支的代码
    $ git merge --no-ff myfeature
    # 删除myfeature分支
    $ git branch -d myfeature
    # 提交develop分支
    $ git push origin develop
    

    注:合并建议使用 git merge --no-ff ,方便读取全部的提交和合并日志。

    2.发布(release)分支:可以从develop分支创建,必须合并回develop分支和master分支;
       分支命名约定为 release-*(例如release-v1.0.2);
       release分支只可以进行bug修复、文档生成等面向发布的任务,不能再添加新的功能。发布任务完成之后,需要将release分支合并到master分支上,并根据版本号为master分支添加tag,并将分支的修改合并到develop分支。

    3.修补程序(hotfix)分支:master分支(此时的程序可能已经在生产环境中运行)存在需要修复的bug的时候,可以从master创建修补分支,修复bug之后,需要将修补分支合并回master和develop分支。合并回master之后,需要更新版本号。
       命名规则为hotfix-*。命名中可以带入问题简述,如 hotfix-v1.0.2-username-not-shown。

  • 相关阅读:
    2955 ACM 杭电 抢银行 01背包 乘法
    杭店 ACM 1864 最大报销额 01背包
    【ACM】 1231 最大连续子序列
    如何保证消息队列的幂等性
    Kafka如何保证消息的高可用
    消息队列的优点和缺点
    架构学习和经验积累的方法
    如何撰写总体设计与详细设计文档
    如何做合格的面试官
    如何设计好的接口
  • 原文地址:https://www.cnblogs.com/waiting-ying/p/13288509.html
Copyright © 2011-2022 走看看