gitflow 协作流程(manjaro linux)

一、在码云上创建仓库

仓库名称为learngit,详细如下:
图片.png

二、clone项目(没有develop分支) :

#克隆项目
1. git clone [email protected]:suncy666/learngit.git
#切换至项目目录
2.cd learngit
#创建develop分支
3.git check -b develop
#将develop推送至远程仓库
4.git push --set-upstream origin develop
图片.png
图片.png
# 2020-07-21 新增一条从远程拉取分支至本地
git fetch origin develop:develop (develop:develop  依次表示 远程分支名:本地分支名)

三、切换至项目目录并查看当前拥有的分支(若远程已有develop分支,新进公司开发人员):

 cd test
git branch
图片.png

四、拉取远程分支develop:

#查看当前分支
git branch
#新建一个分支,并切换到该分支
git checkout -b develop origin/develop
图片.png

描述:假定我要开发一个注册功能:

#创建分支并切换至该分支
git checkout -b register
#在该分支下开发功能
mkdir registerpackage
echo register.java >> registerpackage/register.java
#在当前分支git add .
git add .
git commit -m "第一次提交register.java"
#切换至develop分支
git checkout develop
#在develop合并register
git merge register
#将合并的代码推送至远程(推送前先pull一下上游代码,避免发生冲突)
git push
图片.png

假定项目已经开发完毕:

#创建一个预发布分支
git checkout -b release-1.0.0 develop
#提交该分支至远程
git push
#切换至develop分支
git checkout develop
#合并release-1.0.01 分支
git merge release-1.0.0
#当测试人员测试没有问题后,请求合并release-1.0.01 至master中
git checkout master 
git merge release-1.0.01 
注:release-1.0.01分支是清理发布、执行所有测试、更新文档和其它为下个发布做准备操作的地方,像是一个专门用于改善发布的功能分支。
只要创建这个分支并 push 到中央仓库,这个发布就是功能冻结的。任何不在 develop 分支中的新功能都推到下个发布循环中。
图片.png
注:发布分支是作为功能开发(develop 分支)和对外发布(master 分支)间的缓冲。只要有合并到 master 分支,就应该打好 Tag 以方便跟踪。
#创建标签
git tag -a 1.0.0 -m "第一次发布" master
#将所有标签推送至远程
git push --tags
#推送指定分支上的指定标签
git push origin 1.0.0 emqx    (将emqx分支上的tag 1.0.0推送至远程)
图片.png
打开码云可以看到如下图,有一个标签:
图片.png
进入标签,点击创建发行版:
填相应信息后点击创建:
图片.png

图片.png
点击代码回代码页面,可以看到此时已有一个发行版:
图片.png

假定上线后出现bug:

1.创建Issues
2.记下序列号#I13KJN
图片.png

图片.png
#切换回master分支
git checkout master
#创建issue-#I13KJN分支,并切换至该分支
git checkout -b git checkout -b issue-##I13KJN master
#开始修补bug
#xbug修复完成后,提交
git add .
git commit -m "fixbug"
#切换回master分支,并在master分支中合并分支
git checkout master
git merge issue-##I13KJN
#推送
git push
#发行后要合并至develop中并推送远程,保证develop代码更新
git checkout develop
git merge issue-##I13KJN
git push
#创建标签并推送远程
git tag -a 1.0.1 -m "fixbug"
git push --tags
图片.png
发行版本1.0.1与上面发行1.0.0步骤相同,最终效果如下:
图片.png

你可能感兴趣的:(gitflow 协作流程(manjaro linux))