美文网首页
git flow工作流

git flow工作流

作者: 孤独患者_26e7 | 来源:发表于2018-06-13 16:45 被阅读0次

git-flow是一个关于git的工具,它能更好的规范你当前项目的流程,让你的工作流程变的更加合理有效,简单说,git-flow就是聪明有效地把标准的 Git命令用脚本组合了起来并且不会影响你原来的git命令。

安装(windows环境):

找到自己git的安装目录:

忘记的话可以在cmd上面输入

where git

得到git安装目录

1、下载getopt.exe和libintl3.dll文件

把上述两个文件下载到git安装目录下面的bin目录中,下载地址
百度云盘
(复制链接打开:https://pan.baidu.com/s/1hBJ_Lrn-VrXF1vhVvY5_gQ)

2、clone git-flow到本地

git安装目录后执行以下命令

git clone git://github.com/nvie/gitflow.git
gitflow.png
3、安装

进入gitflow/contrib目录后执行下面操作

msysgit-install.cmd "D:\Program Files\Git" //后面跟相应你自己git安装路径
4、检测安装是否成功
git flow
gitflow1.png

实际开发中使用git-flow

git-flow可以在你当前使用git的项目中使用,进入你所在的项目

1、初始化git-flow
git flow init

初始化后git-flow会在仓库中预设两个分支

  • master:产线上的分支,存储官方发布历史,在实际开发中不直接提交改动到 master 分支。
  • develop:开发新功能的基础分支,另外,该分支也汇集所有已经完成的功能,并等待被整合到 master 分支中。


    1.png

这两个分支被称作为 长期分支。它们会存活在项目的整个生命周期中。

2、新功能开发(git flow feature)
2.png

开始

一个新功能开发时,我们会基于最新的远程develop分支新建一个功能分支

没有git-flow

git checkout develop
git pull
git checkout -b <branch-name>

存在git-flow时

git flow feature start <branch-name>

结束

新功能开发完,我们就要把功能合并到develop分支,你的本地功能分支的生命周期也就结束了,即删除功能分支

没有git-flow

git checkout develop
git merge <branch-name>
git branch -D <branch-name>

存在git-flow时

git flow feature finish <branch-name>
3、管理 releases(git flow releases)

当develop分支包括所有新的功能和必要的修复后并且已经被彻底的测试过了。并且可以等待正式发布的时候就可以创建一个release分支,再次之后不能添加任何新功能,只有bug修复


3.png

开始

这个spring的所有新功能已经开发完成,且测试通过,我们将要发布的时候切一个release分支

没有git-flow

git checkout develop
git checkout -b release/0.1.0 //后面跟版本号

存在git-flow时

git flow release start 0.1.0

请注意,release 分支是使用版本号命名的。这是一个明智的选择,这个命名方案还有一个很好的附带功能,那就是当我们完成了release 后,git-flow 会适当地自动去标记那些 release 提交

完成release

没有git-flow

git checkout develop
git pull
git merge release/0.1.0
git checkout master
git merge release/0.1.0
git branch -D release/0.1.0

存在git-flow时

git flow release finish 0.1.0

这个命令会完成如下一系列的操作

  • git-flow 会拉取远程仓库,以确保目前是最新的版本。
  • release 的内容会被合并到 “master” 和 “develop” 两个分支中去,这样不仅产品代码为最新的版本,而且新的功能分支也将基于最新代码。
  • 为便于识别和做历史参考,release 提交会被标记上这个 release 的名字(在我们的例子里是 “1.1.5”)。
  • 清理操作,版本分支会被删除,并且回到 “develop”。
4、hotfix

在版本发布之后我们偶尔可能会发现一些小的bug,在这个时候我们就需要紧急修改上线的版本我们称这个为hotfix。该分支主要是基于master分支进行修改


4.png

开始

修改线上的紧急bug,基于master分支切换hotfix分支

没有git-flow

git checkout master
git checkout -b <hotfix_branch>

存在git-flow时

git flow hotfix start <hotfix_branch>

完成 Hotfixes

完成bug修复后,要把修复好的代码复制到master和develop,以便下次代码的完整

没有git-flow

git checkout develop
git pull
git merge <hotfix_branch>
git checkout master
git merge <hotfix_branch>
git branch -D <hotfix_branch>

存在git-flow时

git flow hotfix finish 0.1.0

git-flow更加详细的文档:https://www.cnblogs.com/hqbhonker/p/5092300.html

相关文章

  • Git工作流

    一、Git常见工作流 Git三种常见的工作流:Git Flow、GitHub Flow 、GitLab Flow ...

  • git-flow使用指南

    git-flow使用指南 1.简介 git-flow是基于Git Flow工作流模型的工具,了解Git Flow ...

  • GitFlow讲解

    Git Flow 工作流程 1.Git Flow是什么它解决了哪些问题: 2.Git Flow安装: 3.Git ...

  • 关于git flow工作流程的一点思考

    关于git flow工作流程的一点思考 Git Flow工作流程 Git分支管理策略 具体流程暂不细表,参考文章中...

  • Git 工作流程

    文中内容仅供参考。 Git 工作流程简单介绍了三种广泛使用的工作流程: Git flow Github flow ...

  • Git的代码分支策略实践

    目前主流的git工作流模式有git flow、github flow、gitlab flow这几种,采用不同的代码...

  • git分支规范

    分支管理参考git-flow(git-flow介绍)的工作流程,但不使用git-flow。所有的分支的操作都需要手...

  • Git版本管理软件初识 2019-01-26

    git 是什么? “git是版本控制系统。” git 的工作流程? “有三种工作流程: Git flow Gith...

  • 基于jgitflow插件使用git flow

    本文使用jgitflow插件简化实现git flow工作流程,具体流程参考Git工作流程最佳实践--git flo...

  • 如何通俗易懂的理解git-flow

    首先记住:git-flow一个当前非常流行的工作流程 ,工作流程而已 Git Flow的流程图,我相信这张图在网上...

网友评论

      本文标题:git flow工作流

      本文链接:https://www.haomeiwen.com/subject/ggjheftx.html