一、特性分支開發(fā)
- 初始化:使用git-flow,從初始化一個現(xiàn)有的git庫開始:
git flow init - 特性:為即將發(fā)布的版本開發(fā)新功能特性。
- 增加新特性:新特性的開發(fā)是基于‘develop’分支的,通過下面的命令開始開發(fā)新特性:
git flow feature start MYFEATURE - 完成新特性:合并MYFEATURE分支到‘develop’,刪除這個新特性分支,切換回‘develop’分支。
git flow feature finish MYFEATURE - 發(fā)布新特性:完成這個新特性之后,合并MYFEATURE分支到‘develop’,刪除這個心特性分支,切換回‘develop’分支
git flow feature finish MYFEATURE - 發(fā)布新特性:發(fā)布新特性分支到遠程服務器,這樣其它用戶也可以使用這分支
git flow feature publish MYFEATURE - 取得一個發(fā)布的新特性分支:取得其它用戶發(fā)布的新特性分支,并簽出遠程的變更。
git flow feature pull origin MYFEATURE也可以使用git flow feature track MYFEATURE跟蹤在origin上的特性分支。
二、作一個realease版本
- 含義:支持一個新的用于生產(chǎn)環(huán)境的發(fā)布版本;允許修正小問題,并為發(fā)布版本準備元數(shù)據(jù)。
- 開始準備release版本:使用
git flow release命令,它從‘develop’分支開始創(chuàng)建一個release分支。 - 創(chuàng)建release分支之后應立即發(fā)布允許其它用戶向這個release分支提交內容是個明智的做法。命令十分類似發(fā)布新特性:
git flow release publish RELEASE。 - 完成release版本:完成release版本一個git分支操作。它執(zhí)行下面的幾個動作:歸并release分支到‘master’分支,用release分支打Tag,歸并release分支到‘develop’,移除release分支?!甮it flow release finish RELEASE’
三、緊急修復
- 含義:緊急修復來自這樣的需求:生產(chǎn)環(huán)境的版本處于一個不預期狀態(tài),需要立即修正;可能是需要修正 master 分支上某個 TAG 標記的生產(chǎn)版本。
- 開始git flow 緊急修復:像其它 git flow 命令一樣, 緊急修復分支開始自
git flow hotfix start VERSION [BASENAME]VERSION 參數(shù)標記著修正版本。你可以從 [BASENAME]開始,[BASENAME]為finish release時填寫的版本號 - 完成緊急修復:當完成緊急修復分支,代碼歸并回 develop 和 master 分支。相應地,master 分支打上修正版本的 TAG。
git flow hotfix finish VERSION