一、在碼云上創(chuàng)建倉庫
倉庫名稱為learngit,詳細如下:

圖片.png
二、clone項目(沒有develop分支) :
#克隆項目
1. git clone git@gitee.com:suncy666/learngit.git
#切換至項目目錄
2.cd learngit
#創(chuàng)建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分支,新進公司開發(fā)人員):
cd test
git branch

圖片.png
四、拉取遠程分支develop:
#查看當前分支
git branch
#新建一個分支,并切換到該分支
git checkout -b develop origin/develop

圖片.png
描述:假定我要開發(fā)一個注冊功能:
#創(chuàng)建分支并切換至該分支
git checkout -b register
#在該分支下開發(fā)功能
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一下上游代碼,避免發(fā)生沖突)
git push

圖片.png
假定項目已經(jīng)開發(fā)完畢:
#創(chuàng)建一個預發(fā)布分支
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分支是清理發(fā)布、執(zhí)行所有測試、更新文檔和其它為下個發(fā)布做準備操作的地方,像是一個專門用于改善發(fā)布的功能分支。
只要創(chuàng)建這個分支并 push 到中央倉庫,這個發(fā)布就是功能凍結(jié)的。任何不在 develop 分支中的新功能都推到下個發(fā)布循環(huán)中。

圖片.png
注:發(fā)布分支是作為功能開發(fā)(develop 分支)和對外發(fā)布(master 分支)間的緩沖。只要有合并到 master 分支,就應該打好 Tag 以方便跟蹤。
#創(chuàng)建標簽
git tag -a 1.0.0 -m "第一次發(fā)布" master
#將所有標簽推送至遠程
git push --tags
#推送指定分支上的指定標簽
git push origin 1.0.0 emqx (將emqx分支上的tag 1.0.0推送至遠程)

圖片.png
打開碼云可以看到如下圖,有一個標簽:

圖片.png
進入標簽,點擊創(chuàng)建發(fā)行版:

填相應信息后點擊創(chuàng)建:

圖片.png

圖片.png
點擊代碼回代碼頁面,可以看到此時已有一個發(fā)行版:

圖片.png
假定上線后出現(xiàn)bug:
1.創(chuàng)建Issues
2.記下序列號#I13KJN

圖片.png

圖片.png
#切換回master分支
git checkout master
#創(chuàng)建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
#發(fā)行后要合并至develop中并推送遠程,保證develop代碼更新
git checkout develop
git merge issue-##I13KJN
git push
#創(chuàng)建標簽并推送遠程
git tag -a 1.0.1 -m "fixbug"
git push --tags

圖片.png
發(fā)行版本1.0.1與上面發(fā)行1.0.0步驟相同,最終效果如下:

圖片.png