Как пометить файл конфликтующим

Я работал над проектом с другим разработчиком, и он недавно зафиксировал и отправил конфликтующий и неразрешенный файл.

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

Я использовал программный сброс, чтобы вернуться к его ветке, но не могу пометить файл как конфликтующий.

Там в любом случае?

Примечание. Имейте в виду, что этот файл похож на docx, который можно открывать и редактировать только в определенном редакторе. Я не могу открыть его в Notepad++ и вручную разрешить конфликт и зафиксировать его обратно.


person Tanshaydar    schedule 02.09.2015    source источник
comment
Есть ли конкретная причина, по которой вам нужно пометить файл как конфликтующий, а не просто восстановить рабочую версию из старой фиксации?   -  person Maximillian Laumeister    schedule 02.09.2015
comment
Есть 4 ветки, которые были объединены и закрыты, а также многочисленные коммиты в каждой из них.   -  person Tanshaydar    schedule 02.09.2015


Ответы (1)


Вы можете создать конфликтное состояние, повторив попытку слияния, которое он первоначально выполнил. Извлеките (через git checkout, а не git reset!) одного родителя коммита слияния, а затем git merge --no-commit другого родителя. Это объединит все файлы между ними, но вам нужен только один, чтобы вы могли игнорировать остальные. Разрешите конфликт, используя любой инструмент, который вам нужен, и у вас будет исправленная версия файла. Поместите его в безопасное место, затем вернитесь к текущей основной ветке (или к чему-то еще) и зафиксируйте измененный файл.

person amalloy    schedule 02.09.2015