git flow工作流

git flow

git 操作流程

使用

  1. 组长建立一个新仓库,初始化 git init -> git flow init

    1. 以后可以使用git flow init 对项目进行初始化。

    2. 也可以对现在的 git 仓库,再做一遍 git flow init(注意:请在 master 分支上使用)

    3. 自动切换到develop分支,系统自动给你建立了一个develop分支

  2. 1 2个需求,register , login

    • 所有的新功能,新需求,都需要有专门处理他的功能分子(featuter)

    • git flow feature start xxxx (创建一个 feature/xxxx 的功能分支)

  3. 2 git flow feature start register 组长建立一个功能分支

    • 上一步是对各种分支的命名,以一路回车下去,也可以设置

    • 开始编写代码

    • 代码写完啦

    • git status

    • git add .

    • git commit -m 'register end'

    • 拉取远端的develop分支

      • git checkout develop

      • git pull

    • git flow feature finish xxx (结束这个 feature/xxxx 分支)

      • 他会把你的功能分支和 develop 合并,并且把这个功能分支删除

    • 会进入vim的界面,在此可以输入当前合并的描述,也可以esc,:wq保存退出

    • git push,推送到远程仓库,以上的步骤是没有推送到远程的

      • 此时远程仓库的 develop 就是最新的

  4. 张三克隆了远端项目

    1. 也需要做git flow init 初始化,git flow 是一个工具

    2. 张三也切换到了develop分支

    3. git flow feature start login 张三建立了一个功能分支

      •  

      • 开始编写代码

      • git status

      • git add .

      • git commit -m 'login end'

      • 拉取远端的develop分支

        • git checkout develop

        • git pull

      • git flow feature finish xxx (结束这个 feature/xxxx 分支)

      • 他会把你的功能分支和develop合并,并且把这个功能分支删除

      • 会进入vim的界面,在此可以输入当前合并的描述,也可以esc,:wq保存退出

      • 此处插入2张图片

    • git log 出毛病可以用q退出

 

git 中分支的定义

  • master 长期存在

    1. 主干分支

    2. 用于上线的分支,保护性的分支,只包含经过测试,的稳定的代码,开发人员不能直接在这个分支上写代码

  • develop 长期存在

    1. 开发人员进行任何新的开发的基础分支

    2. 当开始一个新的feature分支的时候,要从develop分支分出去。3.另外此分支也汇集所有的意见完成的功能,等待合并到master分支上

  • feature/xxxx 功能分支

    1. feature/login,平常的功能性分支

  • bugfix分支 改bug分支

    1. develop分支上的代码,需要经过测试,测试的bug需要使用bugfix分支去修改

    2. git flow bugfix start xxxx (创建一个名字为xxxx的bugfix分支)

      • 修改bug

      • git status

      • git add .

      • git commit -m ‘bugfix:测试提供的bugID’

      • git checkout develop

      • gti pull

      • git flow bugfix finish xxx (结束这个 bugfix/xxxx 分支)

  • hotfix分支 线上分支出bug很紧急的bug修改分支

    1. 解决线上分支问题

      • git flow

      • git flow hotfix start xxxx (创建一个名字为xxxx的hotfix分支,这是一个基于master分支)

      • 修改bug

      • git status

      • git add .

      • git commit -m ‘修改了什么bug’

      • git flow hotfix finish xxxx(解决)合并到了master也合并到了develop,因为develop也存在bug,如果不合并,下次上线新版本这个bug还在

      • 插入三张图

        • 图一中 i 输入修改内容 :wq

        • 图二中 i 版本号 v 0. 0. 1 :wq (第一位是大版本号,第二个功能添加或者删除可以改,第三个改bug的

          时候改它)

        • 图三 i 可以输入也可以不输入 :wq

  • release分支

    • 当我们的develop分支的代码经过测试并且解决了测试提出的哪些问题之后,我们develop就可以合并到master,做上线

 

posted @ 2019-03-23 09:18  Byhua  阅读(328)  评论(0编辑  收藏  举报