gitattributes -merge для одного конкретного каталога (существующее хранилище)

Извините, если это дубликат. Я искал, но не нашел ничего, что, кажется, работает.

У меня есть git-репо, которое работает с историей, различными ветками и т. Д.

Репо не имеет ранее существовавшего .gitattribute файл, поэтому я добавил один.

мой .gitattribute находится в корневой папке и содержит следующее:

#I've tried the following:
#./src/views/component-testing -merge
#./src/views/component-testing/*.* -merge

#Current content:
./src/views/component-testing/* -merge

Затем я пытаюсь объединить другую ветку (с конфликтующим файлом в тестировании компонентов) в мою текущую. Это результат:

> git merge conflicting-branch
Auto-merging src/views/component-testing/component-testing.tsx
CONFLICT (content): Merge conflict in src/views/component-testing/component-testing.tsx

Почему это не работает?

1 ответ

Здесь есть три проблемы:

  1. -merge выглядит как атрибут для .gitattributes файл, он не принадлежит в .gitignore,

  2. -merge не означает "не объединять эти файлы", это означает, что эти файлы не могут быть автоматически включены. Другими словами, их содержание не имеет смысла пытаться объединить в трех направлениях, обычно потому, что они каждый раз полностью переписываются и не имеют общих областей. (Возможно, потому что они двоичные.)

  3. Файлы не могут быть проигнорированы, как только они возвращены в хранилище. Если у вас конфликт слияния, потому что вы изменили файл в двух разных ветвях, то вам нужно как-то разрешить это. Вы всегда можете принять их сторону слияния, но вы должны действовать.

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