一般代码的合并分为两种:
- 整个分支的合并(git merge)
- 挑选部分的commit来合并
本文介绍的如何使用smartgit的摘取(cherry-pick)功能,对指定分支进行合并。
### 一、分支情况
假设有master和feature两个分支,其中master分支有a,b,c,d四个commit。feature有a,b,e,f,g五个commit。提交顺序关系如下:
![](https://files.mdnice.com/user/15670/74bd756e-b200-4dbc-9733-6fc9ffb9a2da.png)
### 二、需求
现在想将feature分支中的f commit,提交到master分支中。
![](https://files.mdnice.com/user/15670/b9680a6e-5f99-49e9-9a49-83675ba27204.png)
### 三、具体操作
- 1、检出master分支,并勾选feature分支
![](https://files.mdnice.com/user/15670/46a28dad-9455-4be4-9de4-7127029acee6.png)
- 2、选择f commit,右键摘取
![](https://files.mdnice.com/user/15670/504d2c6a-03df-461d-a7c7-71ae22056887.png)
- 3、提交
![](https://files.mdnice.com/user/15670/8a9e9f70-1d2c-4fa6-b948-21bf4bcec129.png)
这样master分支中就有f了
![](https://files.mdnice.com/user/15670/8c6b497c-5a4c-4ff1-8572-7d1303070e8b.png)