Файл .gitignore
В Git файл .gitignore — это текстовый файл, который говорит Git, какие файлы и папки нужно игнорировать при отслеживании изменений в репозитории. С помощью .gitignore можно исключить файлы, которые генерируются при сборке, содержат секретные данные или просто не нужны в проекте.
Где размещать файл
-
Корень репозитория: файл
.gitignoreобычно кладётся в корневую папку репозитория. Это гарантирует, что правила игнорирования будут применяться ко всем файлам и папкам в проекте. -
Вложенные папки: можно создавать файлы
.gitignoreи внутри других папок. Тогда правила будут действовать только на файлы в этой конкретной папке и её подпапках.
Глобальный файл игнорирования
Помимо файла .gitignore в самом проекте, Git использует глобальный файл игнорирования, который применяется ко всем репозиториям в системе. Путь к этому глобальному файлу хранится в переменной конфигурации core.excludesFile.
Узнать расположение глобального файла игнорирования:
git config --global core.excludesFileПример
# Можно добавлять комментарии для ясности. Они начинаются с символа решётки (#).
# Это комментарий!
# Игнорировать файлы с определёнными именами.
Thumbs.db
.DS_Store
# Игнорировать файлы с определёнными расширениями. Символ * (звёздочка) заменяет
# любые символы.
*.log
*.tmp
*.bak
# Игнорировать папки. Слэш в конце не обязателен, но он более явно
# указывает на то, что это именно папка.
logs
temp/
# Игнорировать файлы в любой папке с таким именем.
# Шаблон ** означает любую папку, включая вложенные подпапки.
**/build/
# Игнорировать файлы с определённым именем в конкретной папке.
docs/*.pdf
# Игнорировать все файлы в папке, кроме одного конкретного.
# Префикс ! инвертирует шаблон, поэтому файл не будет проигнорирован.
config/*
!config/main.conf
# Включить ранее проигнорированный файл, используя префикс !.
!important.log.gitignoregit checkoutgit configgit taggit worktree