Cherry-pick Automerge提交ID

时间:2016-01-07 05:57:26

标签: git github merge git-merge

我想把这个提交id挑选到另一个分支。

commit f0ca878ef7748975ee3110923310da6491dd9a23
Merge: 17eb265 4d712a1
Author: ravi<ravi@sysbiz.in>
Date:   Thu Dec 3 12:40:19 2015 +0530

    Merge branch 'master' of https://github.com/HexagonGlobal/hexgen into master

在做樱桃挑选时,我收到了这个错误

D:\GitHub\sysbiz\src>git cherry-pick f0ca878ef7748975ee3110923310da6491dd9a23
error: Commit f0ca878ef7748975ee3110923310da6491dd9a23 is a merge but no -m option was given.
fatal: cherry-pick failed

提前致谢

2 个答案:

答案 0 :(得分:2)

为了让Cherry-pick知道要应用哪些更改,它不仅需要知道正在提取的提交,还需要知道要比较的父级(因为cherry-pick计算被提取的提交与其父级之间的差异)。 / p>

现在,在“合并”提交的情况下,该提交有两个父项,因此您必须使用-m参数指定其中一个父项(第一个或第二个)。

如果你不知道这两个父母是什么,我建议你尝试-m 1和-m 2,看看我是否得到了预期的结果。

请参阅here

答案 1 :(得分:2)

您正在尝试合并合并提交。

合并提交有2个父母,因此您需要指定您希望选择的父母。

enter image description here

正如您在此处所见,C1有2个父母C2 & C3。您必须将父ID传递给cherry-pick以“告诉”他选择提交C2C3的内容。

git cherry-pick -m 1 <sha-1>