Разбор файла .gitignore
Узнайте, как .gitignore исключает ненужные файлы из репозитория с помощью шаблонов, правил области действия и защиты от распространённых ошибок.
«Разбор файла .gitignore» — бесплатный урок DevOps Bootcamp на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения DevOps Bootcamp, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс DevOps Bootcamp содержит 4 уроков всего.
Не всё должно храниться в Git
Артефакты сборки, журналы, секреты и папки зависимостей нельзя добавлять в репозиторий. Файл .gitignore точно указывает Git, какие файлы нужно пропустить.
Что такое .gitignore
.gitignore — это обычный текстовый файл, состоящий из шаблонов. Любой путь, соответствующий шаблону, не попадает в индекс и фиксации, благодаря чему репозиторий остаётся чистым.
Создание первого .gitignore
Разместите .gitignore в корневой папке репозитория и укажите по одному шаблону в каждой строке. Приведённый ниже пример исключает зависимости, журналы и файл окружения.
# .gitignore
node_modules/
*.log
.envОсновные правила шаблонов
Основные шаблоны: *.log соответствует расширению, build/ — целому каталогу, а простое имя — одному конкретному файлу.
*.tmp
dist/
config.local.jsonФиксация с помощью начальной косой черты
Начальная косая черта привязывает шаблон к корню репозитория, поэтому /todo.txt исключает только файл верхнего уровня, а не файл с таким же именем в более глубокой папке.
# only ignores /todo.txt at the root
/todo.txt
# ignores todo.txt anywhere
todo.txtОтрицание с помощью восклицательного знака
Добавьте ! перед шаблоном, чтобы отменить исключение, заданное предыдущим правилом, например игнорировать все журналы, кроме одного, который Вы хотите сохранить.
# ignore all logs except the important one
*.log
!important.logПодстановочные символы: звёздочка и двойная звёздочка
Для подстановочных символов: одна * соответствует любым символам, кроме косой черты, а ** распространяется на каталоги любой глубины.
# any file in any logs directory at any depth
**/logs/*.log
# any .cache file in this dir or below
**/*.cacheКомментарии и пустые строки
Строки, начинающиеся с #, являются комментариями, а пустые строки пропускаются — используйте и то и другое, чтобы сохранить .gitignore упорядоченным и понятным.
# Dependencies
node_modules/
# Environment
.envЛовушка уже отслеживаемых файлов
Важный нюанс: .gitignore влияет только на неотслеживаемые файлы. Если файл уже отслеживается, правило ничего не делает, пока Вы не прекратите его отслеживание с помощью git rm --cached.
git rm --cached secret.txt
# now the ignore rule takes effect for future commitsПроверка причины исключения файла
Не понимаете, почему путь исключён? git check-ignore -v точно укажет совпавшие правило и строку.
git check-ignore -v build/app.js
# .gitignore:2:build/ build/app.jsГлобальное исключение
Для личнего мусора (настроек редактора и ненужных файлов OS), который не должен попадать ни в один репозиторий, задайте глобальное исключение, а не засоряйте файлы проекта.
git config --global core.excludesFile ~/.gitignore_globalБыстрая проверка
Проверьте свои знания о .gitignore.
Итоги
Вы освоили .gitignore: шаблоны, подстановочные символы (*, **), привязку к корню (/), а также отрицание (!). Помните, что он действует только на неотслеживаемые файлы — используйте git check-ignore для отладки.
Часто задаваемые вопросы
Урок «Разбор файла .gitignore» бесплатный?
Да — полный текст урока «Разбор файла .gitignore» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс DevOps Bootcamp, подпишись на CoddyKit PRO. Курс DevOps Bootcamp содержит 4 уроков всего.
Чему я научусь в уроке «Разбор файла .gitignore»?
Узнайте, как .gitignore исключает ненужные файлы из репозитория с помощью шаблонов, правил области действия и защиты от распространённых ошибок. Ты практикуешь DevOps Bootcamp с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать DevOps Bootcamp?
Предыдущий опыт не требуется. DevOps Bootcamp на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Разбор файла .gitignore»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке DevOps Bootcamp?
Да. Каждый урок DevOps Bootcamp включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Введение в управление версиями
- Установка и настройка Git
- Создание первого репозитория
- Разбор файла .gitignore