Я пытаюсь выполнить слияние ветки разработки "update" с веткой "dev". «Обновление» на несколько коммитов опережает dev, и есть вероятность конфликтов. Поэтому я объединяю коммиты «update» по одному, начиная с первого коммита после последнего разделения dev/update. Итак, у нас есть dev, ветвь для обновления, затем N коммитов, и я пытаюсь вернуть просто коммит 1 обратно в dev для запуска.

Я очень озадачен тем, почему Git сообщает об удалении одного из файлов, измененных в этом первом коммите. Было бы смело утверждать, что это ошибка, поэтому я предполагаю, что не понимаю, что происходит, и я надеюсь, что кто-то может научить меня. Спасибо!

(На скриншотах нерелевантные детали удалены для фокусировки, и я имею в виду коммиты просто по первым двум цифрам их хэша SHA.)

На этих изображениях с первого снимка экрана разрешения конфликта слияния очевидно, что в ветке dev файл 8k RMD.SETUP.ACCOUNT был изменен в коммите 5e на 10k.

разрешение конфликтов слияния

На втором изображении подтверждается, что коммит также видит это как удаление. (Я на самом деле не совершал это, я отменил. Это то, что будет совершено после слияния.)

зафиксировать журнал

Чтобы убедиться, что ничего не произошло между веткой dev для обновления и 5e commit, вот снимок сообщения о коммите для текущей ветви dev, commit 30. Это показывает, что последнее обновление включает в себя коммит 9a и a2. Таким образом, прогрессия в dev составляет a2> 9a> 30.

журнал последнего коммита для dev

На этом скриншоте показаны все ветви, и 5e - первое после 30.

ветви до и после 30

0