#git #gitlab #git-merge #merge-conflict-resolution
#git #gitlab #git-слияние #слияние-разрешение конфликта
Вопрос:
В моем проекте есть someFile
, самые первые две строки которого выглядят следующим образом:
// This file is automatically generated
// Generated on 25.08.2020 15:01:00
Время во второй строке меняется.
Следовательно, эта вторая строка является ненужным источником конфликтов слияния для моей команды.
Есть ли способ каким-то образом заставить git игнорировать эту вторую строку при оценке конфликтов слияния git?
Комментарии:
1. Короткий ответ — нет. Есть несколько приемов, которые могут помочь, но «правильный ответ» обычно — не делайте этого . То есть не фиксируйте сгенерированные файлы, просто генерируйте их из фактического источника. Иногда это непрактично, и тогда у вас возникает проблема такого рода. Вы можете написать драйвер слияния, чтобы помочь, но они довольно громоздкие.
Ответ №1:
В общем, нет, это не так. Как правило, вам не следует проверять автоматически созданные файлы или другие продукты сборки в репозитории; это одна из многих причин, почему.
Если вы действительно хотите это сделать, есть несколько подходов, которые вы можете предпринять:
- Используйте фильтр размытия и очистки, чтобы удалить дату при регистрации и добавить ее при оформлении заказа.
- Используйте пользовательский драйвер слияния в
.gitattributes
специально для объединения файла. Каждый пользователь, выполняющий слияние, должен будет иметь этот драйвер слияния, и это почти наверняка не будет работать для слияний, выполняемых вашей хостинговой платформой (потому что у них не будет вашего драйвера слияния).