Ответ 1
Чтобы уточнить: проект gitignore file называется .gitignore
Фон:
A .gitignore
относится к каталогу, в котором он находится, который является либо верхним уровнем, либо потомком каталога с репозиторием .git, то есть каталога ".git/".
В любых подкаталогах может быть несколько файлов .gitignore
, но Best Practice должен иметь один .gitignore
в корне данных проектов и при необходимости иметь подкаталоги файловой ссылки, например. images/yearly/recent В противном случае будет сложно узнать "какой" .gitignore файл, чтобы найти что-то, что игнорируется. Учитывая, что вы можете использовать шаблоны в качестве имен файлов, которые могут быть довольно сложными!
Я также рекомендую избегать использования глобального файла .gitignore
, который применяется ко всем проектам на вашем компьютере, хотя вы можете сохранить шаблон для использования с новыми проектами. Основное соображение здесь состоит в том, что ваш .gitignore
будет отличаться от других разработчиков (который может или не может существовать), и поэтому результат не определен. Одним из примеров исключения является использование глобального файла .gitignore
для файлов IDE, которые я не хочу ни в каком проекте, который я открываю на своей машине, поэтому я использую глобальный .gitigore
с записью для .idea/files ( RubyMine).
Цель шаблонов, которые вы видите, состоит в том, что обычно вы пишете код для заданного файла на определенном языке. Учитывая это, часто достаточно шаблона, основанного на языке.
Если в базе кода есть несколько языков, тогда вам понадобится объединить несколько .gitignore
для этих языков, что может быть сделано множеством способов, таких как:
cat .gitignore1 .gitignore2 > .gitignore # if .gitignore doesn't exist yet
cat .gitignore1 >> .gitignore # Add to it if it already exists
paste .gitignore1 .gitignore # Add to it if it already exists
Горячая (иш) от печати (лето 2014):
Gitignorer - простая утилита, которая помогает создавать файлы .gitignore. Он вытаскивает определенные (заданные) шаблоны .gitignore с общими файлами для исключения из github.com/github/gitignore, объединяет их вместе и сохраняет их в .gitignore в текущем каталоге.
Пример использования:
gitignorer create c java python
Gitignorer в настоящее время доступен в AUR над https://aur.archlinux.org/packages/gitignorer/ и на GitHub в https://github.com/zachlatta/gitignorer