2016-01-07 2 views
0

Я хочу, чтобы cherry-pick this commit id в другую ветку.Черри-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

Для того, чтобы Cherry-выбор, чтобы знать, какие изменения применять его нужно не только знать, фиксация фиксации, а также родительский элемент для сравнения с (поскольку вишня-выбор вычисляет различия между выбранным фиксацией и его родителем).

Теперь, в случае комманды слияния, у этого фиксатора есть два родителя, поэтому вам нужно использовать аргумент -m, чтобы указать одного из этих родителей (первого или второго).

Если вы не знаете, что представляют собой два родителя, я предлагаю вам попробовать оба -m 1 и -m 2 и посмотреть, получится ли я ожидаемый результат.

См. here.

2

Вы пытаетесь объединить фиксацию слияния.

Merge commit имеет 2 родителя, поэтому вам нужно указать, какой из родителей вы хотите выбрать.

enter image description here

Как вы можете видеть здесь C1 имеет 2 родителей C2 & C3. Вы должны передать родительский идентификатор на вишневый выбор, чтобы «рассказать» ему, который фиксирует C2 или C3.

git cherry-pick -m 1 <sha-1> 
Смежные вопросы