Следует ли зафиксировать .gitignore в репозиториях Git?

Считаете ли вы целесообразным совершить .gitignore в репозиторий Git?

Некоторым людям это не нравится, но я думаю, что это хорошо, так как вы можете отслеживать историю файлов. Не правда ли?

Ответ 1

Обычно да, .gitignore полезно для всех, кто хочет работать с репозиторием. Иногда вам нужно игнорировать более частные вещи (возможно, вы часто создаете LOG или что-то в этом случае. Вероятно, вы не хотите, чтобы это было на кого-либо еще.

Ответ 2

Вы обычно делаете коммит .gitignore. На самом деле, я лично захожу так далеко, чтобы убедиться, что мой индекс всегда чист, когда я над чем-то не работаю. (git status ничего не должно показывать.)

Есть случаи, когда вы хотите игнорировать вещи, которые на самом деле не специфичны для проекта. Например, ваш текстовый редактор может создавать файлы автоматического резервного копирования *~, или другой пример - .DS_Store файлы .DS_Store созданные OS X.

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

По умолчанию этот файл находится в $XDG_CONFIG_HOME/git/ignore (по умолчанию ~/.config/git/ignore), но это местоположение можно изменить, установив параметр core.excludesfile. Например:

git config --global core.excludesfile ~/.gitignore

Просто создайте и отредактируйте глобальный файл excludefile для вашего сердца; он будет применяться к каждому git-репозиторию, над которым вы работаете на этой машине.

Ответ 3

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

Я обычно делаю гибрид. Мне нравится, чтобы makefile генерировал файл .gitignore, так как make файл будет знать все файлы, связанные с проектом, - иначе или иначе. Затем выполните проект .gitignore верхнего уровня, который будет игнорировать сгенерированные файлы .gitignore, созданные make файлом для разных подкаталогов.

Итак, в моем проекте у меня может быть подкаталог bin со всеми встроенными исполняемыми файлами. Затем я создам файл make w .gitignore для этого каталога bin. И в верхнем каталоге .gitignore, который перечисляет bin/.gitignore. Верхний - тот, который я регистрирую.

Ответ 4

Хорошая практика .gitignore по крайней мере для ваших продуктов сборки (программ, *.o и т.д.).