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

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

У меня есть репозиторий 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 Ответ

0 голосов
/ 31 января 2019

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

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

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

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

...