SourceTree實作GitFlow教學

A successful Git branching model這篇文章中提到的GitFlow是許多人使用的Git流程之一,但如何實作呢?

git-model2x
在SourceTree的部落格有一篇「Smart branching with SourceTree and Git-flow」教學,以下稍微分享一下。

初始化Git Flow

一、下載SourceTree程式(有Windows/Mac二個版本)。
二、安裝後,按 Clone/New 新增 Create New Repository新增
1

三、新增Repository,我們要在目錄裡面新增檔案先建立一個 master的BRANCHES

2

三、在目錄裡新增README.md,在新增的檔案按右鍵Add後,接下來在commit message中打入 init commit後按Commit.

3

4

5

四、初始commit後,會在BRANCHES裡看到有master,接著按Git Flow,會出現依據Gitflow對應的branch,原則上不用特別設定按ok就好。

6

五、完成後會看到出現 develop,這表示已完成git flow初始。

7

開發新功能分支

一、如果要開發新的功能,點選 Git Flow後按 Start New Feature

8

二、然後輸入新功能的名稱 NewFunction1 後按OK

9

三、建立後,會在branches看到feature/NewFunction1的分支

10

四、新增一個功能Main.pas

11

五、切至working copy裡點main.pas按右鍵add

 

12

六、然後依照原來的做法commit回去,這裡假設我們已經都完成了。

13

七、接著我們要把newfunction1 merge回 develope,先確定目前在NewFunction1上

14

八、點選 Git Flow後按Finish Feature

15

九、接下來會確認我們要完成Feature Name是 Newfunction1,合併後會刪除這個分支(Delete Branch),然後會看到git的圖顯示 “Merge feature/NewFunction1 into develop,按ok

16

十、合併完成後,會看到branches裡原來的NewFunction1的分支刪掉,然後版次圖上看到合併了完成功能1在develop裡。

17

釋出版本

一、在完成一連串功能後,我們開始要release專案出去了,按Git Flow

18

二、點選 start new release

19

三、然後輸入release name為版本號 v1.0.0按ok

20

四、接著會在master下面多了一個release v1.0.0的分支

21

五、確定發佈後,一樣在v1.0.0裡按git flow後,選 Finish Release

22

六、然後選擇tag with this message輸入要tag的名稱,然後選delete branch後按ok
23

七、合併後會看到tags出現v1.0.0,也就是說release/v1.0.0 會 merge 到 master 跟 develop,然後master標上v1.0.0的tag24

 

作者: 林壽山

目前任職於軟體公司研究開發部門,擔任專業處長,專注於.NET C# 開發,並具備豐富的POS 收銀系統與金流整合開發經驗。我精通各類支付系統的設計與開發,包含第三方支付(如綠界、藍新、歐付寶、速買配、馬來西亞 ePay/HappyPay、台新 One 碼)、行動支付(悠遊卡、一卡通、支付寶、微信支付、街口支付)、以及信用卡支付(聯合信用卡)。 熟悉多種開發技術,擅長PHP 網頁開發(CodeIgniter、Laravel 框架)、Delphi 程式設計、資料庫設計、C# WinForm/WebForm 應用開發、ASP.NET MVC、API 串接設計,並具備LINE 串接開發的豐富經驗。 除了技術開發之外,我也熱衷於技術分享,曾擔任台中學校產業學院講師 5 年,培育新一代的軟體開發人才,致力於推動軟體技術的應用與創新。 我對技術充滿熱忱,始終保持學習與探索的心態,期望透過軟體開發為企業與社會創造更大的價值。