Слияние ветки разработки после изменения основной ветки (совершено) - PullRequest
1 голос
/ 24 октября 2019

Я некоторое время работал над веткой development, в то время как другой разработчик вносил изменения в ветку master (фактически несколько коммитов ведущему).

В ветке master теперь есть содержимое, которого нет в моей ветке development. Можно ли объединить ветку development, не влияя на новые коммиты в ветке master? т.е. не перезаписывать какие-либо новые работы в master.

Каков наилучший способ справиться с этим?

Ответы [ 2 ]

2 голосов
/ 24 октября 2019

Нет, принцип слияния в git является аддитивным, вы не можете "перезаписать" коммиты слиянием.

Исходная ситуация

A---B---C---D <<< master
     \
      E---F <<< development <<< HEAD

Ваш коллега совершил коммиты C и D. Давайте теперь сливаем development в master.

git checkout master
git merge development

A---B---C---D---G <<< development, master <<< HEAD
     \         /
      E-------F

. В этот момент коммиты, сделанные в вашей ветке development, доступны из любой ветки, но коммиты C и D по-прежнемуздесь.

2 голосов
/ 24 октября 2019

Если вы, ребята, работаете над отдельными аспектами проекта (и в зависимости от вашей IDE), вы обычно можете указать файлы, которые вы хотите зафиксировать / отправить. Я бы посоветовал сначала извлечь master , а затем скопировать ваши изменения и зафиксировать ваши. Затем создайте запрос на извлечение и объедините ветви. Всегда лучше соблюдать осторожность при работе с git, даже если для этого требуется еще несколько шагов.

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