Git分支管理總結

團隊開發(fā)Git管理策略

簡介

?????? Git是一個免費的開源?分布式版本控制系統,旨在快速,高效地處理從小型到大型項目的所有事務。


分支管理

問?

1. 那么團隊中我們該使用怎樣的分支策略來進行開發(fā)協作?

2. 在多人的團隊中,我們應該在?master?分支上直接開發(fā)嗎?

3. 如果線上產生了bug該通過什么樣方式的分支去修復?

4. 當有多個分支的時候,測試如何有效的參與進來每一個分支的測試?


Git的三種工作方式

Git flow

Github flow

Gitlab flow


這里就說用的比較多的Gitlab flow

?主要分支:

?????? master: 項目的主要分支,規(guī)范的分支管理是不允許在此分支進行改動代碼

?????? develop:開發(fā)分支,develop處于功能開發(fā)的最前線的版本,查看develop分支就能知道下一個發(fā)布版本有哪些功能了。develop一開始是從master里分出來的,并且定期會合并到master里,每一次合并到master,表示我們完成了一個階段的開發(fā),產生一個穩(wěn)定版。同樣的,develop下也不建議直接開發(fā)代碼,develop代表的是已經開發(fā)好的功能的回歸版本。最后,在適當的時候,由合適的人,合并到master,作為下一個穩(wěn)定版本。


輔助分支:

feature: 功能分支,開發(fā)新功能的分支, 基于 develop, 完成后merge回develop

release: 預發(fā)布分支,準備要發(fā)布版本的分支,也基于 develop, 完成后 merge回 develop分支

hotfix: 補丁分支,修復maste上的問題, 等不及 release 版本就必須馬上上線. 基于 master, 完成后merge回? ? ? ? ? master 和develop

?

一般來說輔助分支是不存在遠程倉庫,只存在于本地倉庫的分支

分支命名規(guī)則:develop-xxx,release-xxx,feature-xxx,hotfix-xxx

?


使用工具相關操作

New Branch : 從當前分支新建分支。上圖就是從master分支創(chuàng)建新的分支。

Checkout Tag or Revision : 使用分支、標簽或提交編碼,檢出一個臨時分支

Local Branches : 本地分支列表。同時顯示對應了那個遠程分支。

Remote?Branches : 遠程分支列表

?

Checkout: 檢出這個分支。

Checkout?As...?: 使用這個分支創(chuàng)建新的分支并檢出到新分支。

Compare?With... : 使用當前分支與所選分支做代碼提交比較。

Rebase?Current onto Selected: 在當前分支做變基。(將所選分支提交加入到當前分支)

Checkout?with Rebase : 檢出所選分支并做變基。(將當前分支提交加入到所選分支)

Merge?into ?Current: 合并到當前分支(將所選分支合并到當前分支)

Rname:修改所選分支名稱

Delete:刪除所選分支

?

首次發(fā)文,如果講的不當請見諒,希望大家指出我的不足之處

?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容