git flow工作流
git 操作流程
使用
-
组长建立一个新仓库,初始化 git init -> git flow init
-
以后可以使用git flow init 对项目进行初始化。
-
也可以对现在的 git 仓库,再做一遍 git flow init(注意:请在 master 分支上使用)
-
-
自动切换到develop分支,系统自动给你建立了一个develop分支
-
-
1 2个需求,register , login
-
所有的新功能,新需求,都需要有专门处理他的功能分子(featuter)
-
git flow feature start xxxx (创建一个 feature/xxxx 的功能分支)
-
-
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 就是最新的
-
-
-
张三克隆了远端项目
-
也需要做git flow init 初始化,git flow 是一个工具
-
张三也切换到了develop分支
-
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 长期存在
-
主干分支
-
用于上线的分支,保护性的分支,只包含经过测试,的稳定的代码,开发人员不能直接在这个分支上写代码
-
-
develop 长期存在
-
开发人员进行任何新的开发的基础分支
-
当开始一个新的feature分支的时候,要从develop分支分出去。3.另外此分支也汇集所有的意见完成的功能,等待合并到master分支上
-
-
feature/xxxx 功能分支
-
feature/login,平常的功能性分支
-
-
bugfix分支 改bug分支
-
develop分支上的代码,需要经过测试,测试的bug需要使用bugfix分支去修改
-
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修改分支
-
解决线上分支问题
-
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,做上线
-
-
-
-