Git合并特定commits 到另一个分支

有时候我们需要只合并需要的那些commits,不需要的commits就不合并进去了。

合并某个分支上的单个commit

首先,用Git log查看一下你想选择哪些commits进行合并,例如:

commit f3e50d18922390742ea653f163d20fa90e38c0c6
Author: chenzongwen <chenzongwen@soyoung.com>
Date:   Wed Jul 5 20:15:39 2017 +0800

    add 4.file

commit 39d2aa42fb51ffacf656ac8c08e0bea877f00ac0
Author: chenzongwen <chenzongwen@soyoung.com>
Date:   Wed Jul 5 20:05:09 2017 +0800

    add 1.file

commit bdb45c242bff8f051855a5184cc90d7c2c2d278a
Author: chenzongwen <chenzongwen@soyoung.com>
Date:   Wed Jul 5 20:03:48 2017 +0800

    add owenchan

比如,你在dev分支上的commit 39d2aa42f 修改了一个重要的Bug,你现在只需要将39d2aa42f 合并到master,而不合并dev上的其他commits,所以我们用git cherry-pick命令来做:

git checkout master
git cherry-pick 39d2aa42f

合并结束了。现在39d2aa42f 就被合并到master分支,并在master中添加了commit(作为一个新的commit)。cherry-pick 和merge比较类似,如果git不能合并代码改动(比如遇到合并冲突),git需要你自己来解决冲突并手动添加commit。

基于master创建一个新的分支,并指明新分支的最后一个commit:

git checkout -b newbranch 62ecb3

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值