Git 分支管理策略

一.創(chuàng)建與合并分支:

1.分支概念:

每次提交,Git都把它們串成一條時間線,這條時間線就是一個分支。
我們經(jīng)常用的分支稱為主分支:master
HEAD其實(shí)就是指向master,master才是指向提交的,所以,HEAD指向的就是當(dāng)前分支。

2.創(chuàng)建分支:

(方式1).git checkout -b huan創(chuàng)建一個huan的分支并且切換到該分支。
(方式2.)git branch huan創(chuàng)建分支。git checkout huan切換到該分支



image.png
3.查看當(dāng)前分支

git branch命令查看當(dāng)前分支


注:列出所有分支,在當(dāng)前分支前用*標(biāo)記

4.合并當(dāng)指定支到主分支

git merge huan

5.刪除指定分支

git branch -d huan

二.解決沖突

1.創(chuàng)建新的分支 并且修改222.txt文件內(nèi)容:我在mahuan fenzhi提交的修改后進(jìn)行git add . git commit -m"在mahuan分支提交"

2.切換回主分支,然后再修改222.txt文件內(nèi)容:我是在master分支創(chuàng)建的修改后進(jìn)行git add . git commit -m"我是在master上面提交的"
image.png
image.png
3.嘗試合并mahuan分支到master分支上 git merge mahuan(失敗有沖突)
4.查看文件cat 222.txt 并進(jìn)行修改文件vi 222.txt 修改后進(jìn)行git add . git commit -m"修改沖突之后"
image.png
5.可以看到分支合并圖。

1.git log --graph --pretty=oneline --abbrev-commit

image.png

2.git log --graph

三分支管理策略:

通常,合并分支時,如果可能,Git會用Fast forward模式,但這種模式下,刪除分支后,會丟掉分支信息。
如果要強(qiáng)制禁用Fast forward模式(--no-ff),Git就會在merge時生成一個新的commit,這樣,從分支歷史上就可以看出分支信息。

.

1.首先創(chuàng)建新的分支:git checkout -b mahuan 修改新的分支內(nèi)容提交后
2.然后在返回到master分支 禁用Fast forward模式合并mahuan分支 git merge --no-ff -m"小李合并分支" mahuan
3.最后查看日志:git log --graph --pretty=oneline --abbrev-commit


注:合并分支時,加上--no-ff參數(shù)就可以用普通模式合并,合并后的歷史有分支,能看出來曾經(jīng)做過合并,而fast forward合并就看不出來曾經(jīng)做過合并。

在實(shí)際開發(fā)中,我們應(yīng)該按照幾個基本原則進(jìn)行分支管理:

1.首先,master分支應(yīng)該是非常穩(wěn)定的,也就是僅用來發(fā)布新版本,平時不能在上面干活;
2.那在哪干活呢?干活都在dev分支上,也就是說,dev分支是不穩(wěn)定的,到某個時候,比如1.0版本發(fā)布時,再把dev分支合并到master上,在master分支發(fā)布1.0版本;
3.你和你的小伙伴們每個人都在dev分支上干活,每個人都有自己的分支,時不時地往dev分支上合并就可以了。

團(tuán)隊(duì)合作的分支

.

上文接:Git進(jìn)階學(xué)習(xí)常用命令--學(xué)習(xí)筆記

所在文集:技術(shù)棧

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

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容