Gitflow 工做流

Gitflow 工做流定義了一個圍繞項目發佈的嚴格分支模型。其優勢是清晰可控,使多人項目協做開發更加規範;缺點是相對複雜,須要同時維護兩個長期分支。html

分支介紹

項目中存在兩個長期分支linux

  • 主分支(master)
  • 開發分支 (develop)

master 分支通常對應的是生產環境的代碼,是穩定的發佈版本;develop 分支對應的是開發環境的代碼,存放的都是最新的開發版。git

三種短時間分支github

  • 功能分支(feature branch)
  • 補丁分支(hotfix branch)
  • 預發分支(release branch)

一旦完成開發,它們就會被合併進 develop 或 master,而後被刪除。bash

安裝

mac服務器

brew install git-flow-avhspa

linuxcode

apt-get install git-flowhtm

widowsblog

wget -q -O - --no-check-certificate https://raw.github.com/peterv... install stable | bash

經常使用命令

  1. 初始化

git flow init

  1. 開發新特性,feature 分支

建立一個基於 develop分支的 MYFEATURE feature 分支,並切換到該分支下

git flow feature start MYFEATURE

完成開發新特性,合併 MYFEATURE 分支到 develop,刪除這個新特性分支,並切換回 develop 分支

git flow feature finish MYFEATURE

發佈新特性分支到遠程服務器

git flow feature publish MYFEATURE

更新其它用戶發佈的新特性分支

git flow feature pull origin MYFEATURE

  1. 準備預發佈版本, release 分支

建立 RELEASE 分支,可選參數 BASE 是 develop 分支提交記錄的 sha-1 hash 值,用來啓動 release 分支

git flow release start RELEASE [BASE]

發佈分支到遠程服務器

git flow release publish RELEASE

完成開發 release 分支,合併到 master 分支、develop 分支,添加 Tag 標籤,最後移除 release 分支

git flow release finish RELEASE

  1. 緊急修復, hotfix 分支

git flow hotfix start VERSION [BASENAME]

完成緊急修復分支,代碼合併到 developmaster 分支。相應地,master 分支打上修正版本的 Tag 標籤。

git flow hotfix finish VERSION

git flow 命令

參考文獻

相關文章
相關標籤/搜索