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

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

合并某个分支上的单个commit

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

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

    add 4.file

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

    add 1.file

commit bdb45c242bff8f051855a5184cc90d7c2c2d278a
Author: chenzongwen .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

你可能感兴趣的:(Android)