2016-01-07 33 views
0

我想櫻桃選這個提交id到另一個分支。Cherry-pick Automerge commit id

commit f0ca878ef7748975ee3110923310da6491dd9a23 
Merge: 17eb265 4d712a1 
Author: ravi<[email protected]> 
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 

在此先感謝

+0

從文檔:* - 主線父數 通常你不能摘櫻桃的合併,因爲你不知道該合併方應被視爲主線做。此選項指定主線的父代號(從1開始),並允許櫻桃選擇重放相對於指定的父代的更改。* – Atri

+1

[git cherry-pick說的可能重複「... 38c74d是合併但不是-m選項被給出「](http://stackoverflow.com/questions/9229301/git-cherry-pick-says-38c74d-is-a-merge-but-no-m-option-was-given) –

回答

2

爲了摘櫻桃知道什麼改變應用它不僅需要知道提交被選中,但也是父對象進行比較(因爲櫻桃挑選計算提交和它的父母提交之間的差異)。

現在,在「合併」提交的情況下,該提交具有兩個父項,因此必須使用-m參數指定其中一個父項(第一個或第二個)。

如果你不知道這兩個父母是什麼,我建議你試試-m 1和-m 2,看看我是否能得到預期的結果。

請參閱here

2

您正在嘗試合併合併提交。

合併提交有2個父母,所以你需要指定你想選擇哪個父母。

enter image description here

正如你可以在這裏看到C1有2位家長C2 & C3。您必須將父母身份證傳遞給櫻桃選擇,以「告訴」他選擇哪個承諾C2C3

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