Git Merge показывает удаление файла, когда он был изменен

Я пытаюсь выполнить слияние ветки разработки "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.

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

0 ответов

Другие вопросы по тегам