Ключевые концепции

Файл .gitignore

В Git файл .gitignore — это текстовый файл, который говорит Git, какие файлы и папки нужно игнорировать при отслеживании изменений в репозитории. С помощью .gitignore можно исключить файлы, которые генерируются при сборке, содержат секретные данные или просто не нужны в проекте.

Где размещать файл

  1. Корень репозитория: файл .gitignore обычно кладётся в корневую папку репозитория. Это гарантирует, что правила игнорирования будут применяться ко всем файлам и папкам в проекте.

  2. Вложенные папки: можно создавать файлы .gitignore и внутри других папок. Тогда правила будут действовать только на файлы в этой конкретной папке и её подпапках.

Глобальный файл игнорирования

Помимо файла .gitignore в самом проекте, Git использует глобальный файл игнорирования, который применяется ко всем репозиториям в системе. Путь к этому глобальному файлу хранится в переменной конфигурации core.excludesFile.

Узнать расположение глобального файла игнорирования:

git config --global core.excludesFile

Пример

Файл: .gitignore
# Можно добавлять комментарии для ясности. Они начинаются с символа решётки (#).
# Это комментарий!
 
# Игнорировать файлы с определёнными именами.
Thumbs.db
.DS_Store
 
# Игнорировать файлы с определёнными расширениями. Символ * (звёздочка) заменяет
# любые символы.
*.log
*.tmp
*.bak
 
# Игнорировать папки. Слэш в конце не обязателен, но он более явно
# указывает на то, что это именно папка.
logs
temp/
 
# Игнорировать файлы в любой папке с таким именем.
# Шаблон ** означает любую папку, включая вложенные подпапки.
**/build/
 
# Игнорировать файлы с определённым именем в конкретной папке.
docs/*.pdf
 
# Игнорировать все файлы в папке, кроме одного конкретного.
# Префикс ! инвертирует шаблон, поэтому файл не будет проигнорирован.
config/*
!config/main.conf
 
# Включить ранее проигнорированный файл, используя префикс !.
!important.log