git-flow
是關(guān)于如何使用Git的約定;
不僅代碼要有規(guī)范,代碼的管理也要有規(guī)范的流程,所有目前很多工程師都在用gitflow方案。
簡單概括:
master 生產(chǎn)主分支 , 產(chǎn)品的功能全部實現(xiàn)后 , 最終在此對外發(fā)布。
develop 主開發(fā)分支 , 基于master分支克隆。
feature 功能開發(fā)分支 , 基于develop分支克隆 , 主要用于新需求新功能的開發(fā)。
release 測試分支 , 基于feature分支合并到develop之后 , 從develop分支克隆。
hotfix 補丁分支 , 基于master分支克隆 , 主要用于對線上的版本進行BUG修復。
詳細描述:
【master分支】需要遵循一個基本原則,所有在master分支上的commit應該tag。

【feature分支】做完后,必須合并回develop分支, 合并完分支后一般會刪點這個feature分支,但是也可以保留。

【release分支】基于develop分支創(chuàng)建,打完release分支后,我們可以在這個release分支上測試,修改bug等。發(fā)布release分支時,合并release到master和develop, 同時在master分支上打個tag記住release版本號。

【hotfix分支】基于master分支創(chuàng)建,開發(fā)完后需要合并回master和develop分支,同時在master上打一個tag。

工具推薦
Tower是mac上個人認為比較好用的git管理工具,圖形操作其最重要是能夠提升工作效率;
Tower支持git-flow,開箱就使用很方便;
→ settings → git-flow,出現(xiàn)配置彈框


總結(jié):
今天了解了gitflow的代碼管理流程,但我們的情況有點不一樣,我覺得release環(huán)節(jié)應該可以不做,我們的測試環(huán)境是需要將研發(fā)完成的代碼推到遠程倉庫分支,develop就能滿足了;還有個問題:我們前后端調(diào)試,需要針對不同的功能切換不同的feature分支很麻煩,明天再問問別的或者刷刷帖子有沒有更好的解決辦法。