Merge:
1、Fast-forward(快進式)
2、recursice strategy (策略合并,三方合并)
-
Fast-forward
-
策略合并
//創建一個文件夾,并初始化 Git
mkdir GitDemo
cd GitDemo
git init//初次提交,創建 master 分支
touch master.txt
git add.
git commit -m '添加master文件'//從master分支末尾,創建并切換 featureA 分支,并創建一個提交
git checkout -b featureA
touch A.txt
git add.
git commit -m '添加A文件'//從master分支末尾,創建并切換 featureB 分支,并創建一個提交
git checkout master
git checkout -b featureB
touch B.txt
git add.
git commit -m '添加B文件'//切換 master 分支
git checkout master//master 合并 featureA 分支
git merge featureA//master 合并featureA 后再合并 featureB 分支
git merge featureB復制代碼
執行結果如圖:
合并過程如圖:
這是沒有沖突的時候,但是日常肯定會有沖突的,那么我們就創建一個沖突。 我們在三個分支的 master 文件都進行修改。每一個分支都不同。
Git Flow 的作者 Vincent Driessen 非常建議,在 合并分支 merge 的時候加上 no-ff 參數。意思是不要選擇 Fast-Forward 模式,而是采用 Recursice Strategy 策略模式。這樣會讓我們多一個合并提交,這樣做的好處是有一個非常清晰的提交歷史。可以看到合并分支的存在。
【完全copy文章】
[Git三大特色之Branch(分支)]blog.csdn.net/qq_32452623…