團隊Git Flow指南

  • Git Flow指南
常規:
  1. 團隊項目以git flow模型管理分支,使用bitbucket託管,以pull request方式作code review。
 
我的開發流程:
1)在bitbucket團隊項目頁面上fork這個庫(之後簡稱repo)
2)克隆fork到你名下的庫, 注意是你名下的
git clone git@bitbucket.org:yourname/repo.git
3)git flow初始化及track遠程develop分支
cd repo
git flow init -d
git pull origin develop
git branch --set-­ups­tream develop origin­/de­velop

 

4)按git flow的規範(見分支規範)操做,好比開一個新特性分支
git flow feature start feature-xxx

git add .
git commit -m 'xxxx' 

git flow feature finish feature-xxx

 

5)推送最新的代碼到遠程develop分支
git push origin develop

 

6)當完成一次task或是bugfixed的編碼後,發起PR(pull request),通常是從你的develop分支到團隊項目的develop分支。
3

7)爲了保持與團隊項目代碼庫的更新,作以下操做
git remote add upstream git@bitbucket.org:fstone/xxx.git
git fetch upstream
git merge upstream/develop develop

 

PR規範
  1. title簡短清晰,附上basecamp todo id或者bitbucket issue id(若是是bugfix)
  2. 更多內容補充在description裏
  3. 全員review
 
分支規範:
  1. master分支上的代碼老是穩定的(stable build),隨時能夠發佈出去。
  2. develop上的代碼老是從feature上合併過來的,能夠進行Nightly Builds,但不直接在develop上進行開發。當develop上的feature足夠多以致於能夠進行新版本的發佈時,能夠建立release分支。
  3. release分支基於develop,進行很簡單的修改後就被合併到master,並打上tag,表示能夠發佈了。緊接着release將被合併到develop;此時develop可能往前跑了一段,出現合併衝突,須要手工解決衝突後再次合併。這步完成後就刪除release分支。
  4. 當從已發佈版本中發現bug要修復時,就應用到hotfix分支了。hotfix基於master分支,完成bug修復或緊急修改後,要merge回master,打上一個新的tag,並merge回develop,刪除hotfix分支。

命名規範:
  1. 特性分支以Basecamp裏的 project-id.todos-id命名(經過URL查看),例如feature-xxxx.xxxxxx
其餘:
  1. 不是緊急的bug,在下一個release版本以前修復,commit描述爲 bugfixed-issue id.
  2. 緊急的bug,開hotfix分支修復,以Basecamp裏的 project-id.todos-id命名(經過URL查看)。
相關文章
相關標籤/搜索