2011-08-15 78 views
2

我有两个分支。现在让我们称他们为A & B.我想有选择性地复制从A到B的20次提交。是否有任何有效的方法来执行此操作?Git合并分支提交

我知道我可以一次挑一个樱桃挑,但我可以一次做20个吗?假设20个提交不在一起,并且它们之间存在我不想复制的提交。

例子。支路A提交

4-> 5-> 6-> 7

分支乙

1-> 2-> 3-> 8

我想将4,5,7复制到B.

回答

3

我宁愿rebase --interactive A到B,因为樱桃采摘引入重复的提交,这通常不是一个好主意。
请参阅“Git cherry pick and datamodel integrity”。

也就是说,您可以在git cherry-pick命令中指定一组提交和多个提交。用空格分隔每个提交,并查看如何在gitrevision中指定所述提交。

2

您可以通过尽可能多的提交,只要您想git cherry-pick

$ git checkout B 
$ git cherry-pick A~3 A~2 A 

会做你在你的例子中描述的。