Как объединить конкретные коммиты из dev в master - PullRequest
0 голосов
/ 08 февраля 2019

Я пытаюсь объединить некоторые конкретные (не все) от разработчика до мастера.И Используемая ниже команда, которая выдает исключение.

C:\Users\arrchana\New_Code\Paymentev\AmazonPaymente2etestserv\A2paymente2etestservService> git cherry-pick 5dc6112
error: Commit 5dc6112 is a merge but no -m option was given.
fatal: cherry-pick failed

Как решить эту проблему?Есть ли другой способ получить конкретный коммит от dev и объединить его с веткой Master?

1 Ответ

0 голосов
/ 08 февраля 2019

Вы пытаетесь выбрать коммит слияния.Хотя это можно сделать, скорее всего, это не то, что вам нужно.

Если вы пытаетесь применить изменения из определенного диапазона коммитов , вам нужно будет найти коммит-ish (теги или sha1-хэши) для всех этих коммитов, просматривая журнал.

Затем вы можете запустить git cherry-pick hash1 hash2 hash3....Убедитесь, что эти хеши находятся в том порядке, в котором они были зафиксированы!


Если ваше конкретное изменение в коммите слияния, оно становится сложнее.

Сначала: Не вносите никаких изменений, кроме разрешения конфликтов в коммите слияния!

С этим из пути: Вы можете git diff 5dc6112 коммит слияния или git show 5dc6112, чтобы увидеть, есликоторый содержит ваши соответствующие изменения.Если это произойдет, перейдите:

git [diff/show] 5dc6112 | patch -p1

, чтобы применить diff к вашему текущему рабочему каталогу.Затем вы можете зафиксировать эти изменения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...