Merge:git
一、Fast-forward(快進式)bash
二、recursice strategy (策略合併,三方合併)ui
Fast-forward spa
策略合併 .net
//建立一個文件夾,並初始化 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
複製代碼
執行結果如圖: 3d
合併過程如圖:code
這是沒有衝突的時候,可是平常確定會有衝突的,那麼咱們就建立一個衝突。 咱們在三個分支的 master 文件都進行修改。每個分支都不一樣。cdn
咱們修改後 add commit 就行了。Git Flow 的做者 Vincent Driessen 很是建議,在 合併分支 merge 的時候加上 no-ff 參數。意思是不要選擇 Fast-Forward 模式,而是採用 Recursice Strategy 策略模式。這樣會讓咱們多一個合併提交,這樣作的好處是有一個很是清晰的提交歷史。能夠看到合併分支的存在。blog
【徹底copy文章】get
[Git三大特點之Branch(分支)]blog.csdn.net/qq_32452623…