背景
假設有一個項目存在一個主幹分支和若幹分支:
remotes/origin/HEAD -> origin/master
remotes/origin/master
remotes/origin/v1.0.1
remotes/origin/v1.0.2
remotes/origin/v1.0.3
remotes/origin/v1.0.4
remotes/origin/v1.0.5
需求描述
要将master送出的某個
commit
合并到
v1.0.5
操作步驟
1、
clone
項目或者下載下傳指定分支項目(如果有問題,可參考我的Git關于分支常用指令記錄,切換分支、下載下傳指定分支)
2、在本地建立或切換到v2.0分支,操作如下:
// 方式一、建立分支, v1.0.5表示本地分支名稱, remotes/origin/v1.0.5是遠端分支名稱
git checkout -b v1.0.5 remotes/origin/v1.0.5
注意:操作之前可通過:
git branch -a
檢視所有分支(結果如下圖)
// 方式二、切換分支
git checkout v1.0.5
注意:操作之前可通過:
git branch
檢視所有分支(結果如下圖)
3、通過
git cherry-pick 00940ac970b9ddab63bff928479668bbfa293aaf
将另一個分支指定
commit-id
合并到本地分支,
00940ac970b9ddab63bff928479668bbfa293aaf
是另一個分支的
commit-id
,也可以用
空格
分離多個
commit-id
批量送出。
4、此時通過
git log
檢視本地分支則會顯示你擷取的指定送出
5、确認本地
v1.0.5
已經擷取到另一個分支的指定送出後,然後就可以直接通過
git push
送出代碼啦!(當然,不要忘了在
git push
前先
git pull
拉取最新的代碼呦!否則可能就會出現
meger
沖突。如若出現此錯誤,可通過檢視我的文章解決git Meger消息出現的問題解決)