Содержание

Что такое .gitignore

Файл .gitignore говорит Git какие файлы игнорировать — не отслеживать, не добавлять в коммиты. Создаётся в корне репозитория.

Что обязательно игнорировать

Зависимостиnode_modules, vendor, .venv. Генерируются автоматически через npm install, весят сотни МБ, у каждого разработчика свои.

Файлы окружения.env. Здесь хранятся секреты: пароли, API-ключи, токены. Если закоммитишь — они попадут в публичный репо (как безопасно передавать их в контейнеры — в статье про Docker Compose).

⚠️ Если ты уже закоммитил .env — простое добавление в .gitignore не поможет. Нужно удалить файл из истории и сменить все скомпрометированные ключи.

Системные файлы.DS_Store (macOS), Thumbs.db (Windows).

Артефакты сборкиdist/, build/, .next/, __pycache__/.

Как организовать сами ветки и коммиты — в статье про Git flow.

Типовой .gitignore для Node.js

# Зависимости
node_modules/

# Окружение
.env
.env.local
.env.*.local

# Сборка
dist/
build/
.next/

# Логи
*.log
npm-debug.log*

# Системные
.DS_Store
Thumbs.db

# Редакторы
.vscode/settings.json
.idea/

💡 Сайт gitignore.io генерирует готовый .gitignore по технологиям. Введи «Node», «Python», «macOS» — получишь полный файл.

Глобальный .gitignore

Системный мусор лучше вынести в глобальный gitignore — не добавлять в каждый проект:

touch ~/.gitignore_global
git config --global core.excludesfile ~/.gitignore_global
echo ".DS_Store" >> ~/.gitignore_global
echo ".idea/" >> ~/.gitignore_global

Если файл уже в репо

Добавление в .gitignore не удаляет уже отслеживаемый файл. Чтобы убрать из отслеживания, но оставить локально:

git rm -r --cached node_modules/
git rm --cached .env
git commit -m "remove tracked files from gitignore"
Поделиться: