在團隊中咱們免不了要進行協做開發,小到功能,大到模塊,在處理合並代碼,處理衝突,控制權限和保存有效歷史版本的業務中,咱們須要一種行之有效的Git工做流程。git
咱們必須的這五個分支:安全
項目的起點在這裏,一開始,從master branch切出develop branch。服務器
今後,在develop branch上進行切feature branch進行功能模塊的開發,合併代碼,測試,測試成功後切出穩定預發佈版本release branch。單元測試
從develop branch切出功能分支後,進行開發,開發完成以後,dev merge它,進行測試。
功能開發小組在完成該功能模塊以前,儘可能不要merge其餘feature的代碼,保持功能分支代碼的單純,這樣在最終版本迭代上,git版本控制粒度爲功能,經過merge feature branch和回滾操做,功能分支能夠進行單一的增長或者去掉。測試
當系統在線上出現bug時,須要火速處理,因此這個分支的名字叫hotfix branch,它從master分支上切下來,master branch(生產服務器)先回滾到上一個穩定版原本避免bug再出現,開發人員處理掉這個bug後進行單元測試,迴歸測試以後,master merge hotfix,別忘了develop branch也要merge 它!spa
當咱們在develop branch測試經過功能以後,切出一個預發佈分支,這個分支是穩定的,能夠保障生產安全的一個分支。當線上升級版本是,master branch merge它。版本控制
大概其就是這麼個意思吧,以下圖。ip
這是一次我講解git workflow的實例。開發