1. 程式人生 > >git分支命名規範

git分支命名規範

<本文內容來自網路>

1、git flow是什麼?

Git Flow是一套使用Git進行原始碼管理時的一套行為規範和簡化部分Git操作的工具。git-flow 並不是要替代 Git,它僅僅是非常聰明有效地把標準的 Git 命令用指令碼組合了起來。Git Flow是構建在Git之上的一個組織軟體開發活動的模型,是在Git之上構建的一項軟體開發最佳實踐。

2、git flow定義的分支

Master分支:最近釋出到生產環境的程式碼,最近釋出的release。這個分支只能從其他分支合併,不能直接修改

Develop分支:主開發分支,包含要釋出到下一個release的程式碼。這個主要是用於與其他分支合併,比如Feature分支

Feature分支:主要用來開發新功能。每一個特性(feature)都必須在自己的分支裡開發,feature分支派生自develop分支。當feature開發完畢後,要合併回develop分支。feature分支永遠不會和master分支打交道。

Release分支:release分支不是一個放正式釋出產品的分支,你可以將它理解為“待發布”分支。在這個分支裡面絕對不會新增新的特性。我們用這個分支幹所有和釋出有關的事情,比如:

    把這個分支打包給測試人員測試

    在這個分支裡修復bug

    編寫釋出文件

所以在這個分支裡面絕對不會新增新的特性。當和釋出相關的工作都完成後,release分支合併回develop和master分支。

Hotfix分支:緊急修復分支,生產事故。hotfix分支基於master分支建立,開發完後需要合併回master和develop分支,同時在master上打一個tag。所有的hotfix改動都要進入下個release。

3、新功能開發

增加新功能:

Git flow feature start myfeature

完成功能開發:

Git flow feature finish myfeature

執行動作:

       合併myfeature分支到develop;

       刪除myfeature分支

       切回develop分支

Push新功能

Git flow feature publish myfeature

Pull新功能

Git flow feature pull origin myfeature

4、釋出release版本

增加新分支:

git flow release start RELEASE0.1

釋出分支

git flow release publish RELEASE0.1

完成釋出

git flow release finish –m ‘版本0.1’  RELEASE0.1

執行動作:

把release分支合併回master

給本次釋出打tag

同時把release分支合併回develop

幹掉release分支

5、緊急修復分支

新增分支:

git flow hotfix start VERSION

完成修復

git flow hotfix finish VERSION