Сбор вишни и умный диффузинг
Ситуация: локальный репозиторий имеет филиал A
и филиал B
, Ветка B
впереди ветви A
скажем, 30 коммитов.
Первый вопрос: могу ли я перечислить все коммиты, которые находятся в B
которые не в A
?
Второй вопрос: допустим, я выбираю некоторые (совершенно случайные) коммиты из B
в A
, Что будет, если после этого я попытаюсь слить B
в A
? Получу ли я дублированные коммиты? Можно ли этого как-то избежать?
1 ответ
Решение
Что касается первого вопроса,
git log --left-right --graph --cherry-pick --oneline B...A
чтобы получить список различных коммитов между ветками.
После слияния одной ветви с другой git автоматически сохранит только одну копию дублирующих коммитов. В любом случае, если возникнет конфликт, git попросит вас разрешить его вручную.