⚠️
Что добавить в .gitignoreПривет!
Кажется, сегодня про GIT знают все, ну или хотя бы слышали. Эта система контроля версий сегодня заслуженно самая популярная.
О самом ГИТе поговорим в другой раз, а сегодня - про один из важных файлов, в котором можно указывать какие файлы должны попасть в индекс системы, а какие нужно проигнорировать. В лучших программистских традициях он так и называется .gitignore.
В этом файле на отдельных строках указываются шаблоны путей файлов и каталогов проекта, которые нужно проигнорировать или наоборот принудительно включить в индекс.
Зачем же нам нужен хорошо настроенный gitignore? Может без него как-то проживём?Действительно, без этого файла вполне можно жить, но качество жизни определённо пострадает:) Ведь его правильная настройка поможет держать репозиторий в чистоте, сэкономить место на гит-хостинге и увеличить скорость скачивания репозитория.
🟢
Что стоит добавлять в .gitignore▫️
Файлы и папки, сгенерированные автоматически - Компилируемые файлы (например, .class, .o, .out и другие).
- Файлы сборки (например, dist/, build/, target/).
Нет никакого смысла их хранить, т.к. это промежуточные файлы и их легко можно получить на основе исходного кода.
▫️
Данные локальной конфигурации и среды - Конфигурационные файлы IDE (например, .vscode/, .idea/).
- Файлы среды (например, .env с секретными ключами и настройками).
Локальные настройки также не нужны в репозитории т.к. они актуальны только на машине конкретного разработчика. У других разработчиков и на сервере настройки будут иными.
▫️
Кэшированные и временные файлы - Временные файлы операционной системы (например, Thumbs.db, .DS_Store).
- Кэшированные зависимости (например, node_modules/ в проектах Node.js, .venv/ для Python).
Тут всё как с автоматически сгенерированными - это промежуточный результат работы, ценность он представляет только во время работы/сборки приложения
▫️
Логи и файлы с результатами работы программы - Файлы журналов (например, .log).
- Выходные данные и отладочные файлы (например, .tmp, *.log).
По своей сути это те же временные файлы, актуальные "здесь и сейчас" - нет смысла в их хранении (для этого есть специальные места хранения)
🔴
Что не стоит добавлять в .gitignore▫️
Исходный код и важные файлы конфигурации - Файлы исходного кода и ключевые конфигурационные файлы, необходимые для работы проекта.
▫️
Скрипты для развёртывания и инфраструктуры - Скрипты развёртывания и инфраструктурные файлы (например, Dockerfile, docker-compose.yml).
▫️
Документация и примеры данных - Файлы документации (например,
README.md, файлы с инструкциями).
- Примеры данных (если они важны для тестирования).
Все вышеуказанные данные как раз и являются проектом, и их-то и нужно бережно хранить в системе контроля версий.
🟢 Файл .gitignore чрезвычайно полезен. Он позволяет держать репозиторий в чистоте и порядке.
❗️
Помни, что его не получится сгенерировать раз и навсегда: по мере роста и усложнения проекта, он будет расти вместе с ним.🔔 Подписывайся на
Тимлидельник — тут внезапно может оказаться интересно, а ты не подписан🧐
@teamlead_monday