Pack Camo

Генератор .gitignore

Об'єднуйте шаблони мов, фреймворків, редакторів та ОС в один файл .gitignore.

Усе виконується локально — нічого не надсилається на сервер.

.gitignore

meta.patterns · meta.lines · 1 дублікат видалено

# Generated for: Node, Env & secrets, macOS, Windows, VS Code### Node #### Logslogs*.lognpm-debug.log*yarn-debug.log*yarn-error.log*lerna-debug.log*.pnpm-debug.log*# Diagnostic reports (https://nodejs.org/api/report.html)report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json# Runtime datapids*.pid*.seed*.pid.lock# Coverage directory used by tools like istanbulcoverage*.lcov.nyc_output# Dependency directoriesnode_modules/jspm_packages/bower_components# TypeScript cache*.tsbuildinfo# Optional npm cache directory.npm# Optional eslint / stylelint cache.eslintcache.stylelintcache# Optional REPL history.node_repl_history# Output of 'npm pack'*.tgz# Yarn Integrity file.yarn-integrity# dotenv environment variable files.env.env.development.local.env.test.local.env.production.local.env.local# parcel-bundler cache.cache.parcel-cache# Build outputdistbuild# Gatsby files.cache/public# Serverless directories.serverless/# FuseBox cache.fusebox/# DynamoDB Local files.dynamodb/# TernJS port file.tern-port# Stores VSCode versions used for testing VSCode extensions.vscode-test# yarn v2.yarn/cache.yarn/unplugged.yarn/build-state.yml.yarn/install-state.gz.pnp.*### Env & secrets #### Environment files.env.*!.env.example!.env.sample!.env.template# Keys and certificates*.pem*.key*.p12*.pfx*.crt*.cerid_rsaid_rsa.pubid_ed25519id_ed25519.pub# Credentialscredentials.jsonsecrets.jsonsecrets.yml*.secret.npmrc.pypirc.netrcservice-account*.json### macOS #### General.DS_Store.AppleDouble.LSOverrideIcon[\r]# Thumbnails._*# Files that might appear in the root of a volume.DocumentRevisions-V100.fseventsd.Spotlight-V100.TemporaryItems.Trashes.VolumeIcon.icns.com.apple.timemachine.donotpresent# Directories potentially created on remote AFP share.AppleDB.AppleDesktopNetwork Trash FolderTemporary Items.apdisk### Windows #### Windows thumbnail cache filesThumbs.dbThumbs.db:encryptableehthumbs.dbehthumbs_vista.db# Dump file*.stackdump# Folder config file[Dd]esktop.ini# Recycle Bin used on file shares$RECYCLE.BIN/# Windows Installer files*.cab*.msi*.msix*.msm*.msp# Windows shortcuts*.lnk### VS Code ###.vscode/*!.vscode/settings.json!.vscode/tasks.json!.vscode/launch.json!.vscode/extensions.json!.vscode/*.code-snippets# Local History for Visual Studio Code.history/# Built Visual Studio Code Extensions*.vsix

Файли, що вже відстежуються, залишаться в Git: виконайте git rm --cached <file>, щоб зупинити їх відстеження.

Один файл .gitignore для всього вашого стеку

Цей генератор .gitignore об'єднує готові шаблони для мов програмування, фреймворків, інструментів збірки, редакторів та операційних систем в один цілісний файл. Оберіть Node та Next.js, додайте macOS, Windows і VS Code — і ви отримаєте файл .gitignore з чітко розмежованими секціями, без повторюваних правил та з місцем для власних рядків. Шаблони адаптовані з офіційної колекції github/gitignore, а вся обробка відбувається прямо у вашому браузері.

Як згенерувати файл .gitignore

  1. 1Введіть назву мови, фреймворку, редактора або ОС у пошуковий рядок — python, unity, jetbrains — і натисніть на плашку для додавання. Enter обирає перший результат.
  2. 2Поєднуйте стільки шаблонів, скільки потрібно вашому проєкту. Типовий вебпроєкт зазвичай містить мову, фреймворк, редактор коду та операційну систему.
  3. 3Додайте шляхи до специфічних файлів у розділі Власні рядки, наприклад /uploads/ або *.sqlite.
  4. 4Скопіюйте результат або натисніть Завантажити файл .gitignore та розмістіть його в корені свого Git-репозиторію.

Призначення файлу .gitignore

Файл .gitignore визначає файли, які Git не повинен відстежувати: сторонні залежності (node_modules/, vendor/), скомпільовані файли (dist/, target/), кеш, логи, налаштування середовища розробки та секретні дані на кшталт .env. Їх виключення зменшує розмір репозиторію, робить diff зручним для читання та запобігає випадковому витоку ключів доступу.

Цей файл діє лише на невідстежувані (untracked) файли. Якщо файл уже було закомічено раніше, додавання його до .gitignore не видалить його з репозиторію; виконайте команду git rm --cached <file> (або git rm -r --cached <dir>) і зробіть коміт, щоб припинити відстеження зі збереженням локальної копії.

Синтаксис правил .gitignore

Порядок правил важливий: останнє правило має вищий пріоритет, тому винятки на кшталт !.vscode/settings.json завжди вказуються після загального правила .vscode/*.

*.log
Шаблон без косої риски діє на будь-якій глибині: ігнорує кожен файл .log у репозиторії.
/build
Коса риска на початку прив'язує шаблон до кореня файлу .gitignore, ігноруючи лише каталог build верхнього рівня.
dist/
Коса риска в кінці відповідає виключно каталогам, не зачіпаючи звичайний файл з назвою dist.
**/temp
Дві зірочки відповідають будь-якій кількості каталогів: папка temp у корені або в будь-якому підкаталозі.
!.env.example
Знак оклику на початку повертає відстеження файлу, виключеного попереднім правилом. Не діє, якщо батьківську папку повністю виключено.
# коментар
Рядки, що починаються з #, вважаються коментарями; порожні рядки слугують роздільниками. Додайте зворотний слеш перед # або ! для точного збігу.

Як об'єднуються шаблони

Кожен шаблон стає окремим розділом із заголовком ### Назва ###. За увімкненої опції Видаляти повторювані шаблони правила, що вже з'являлися раніше, вилучаються з наступних розділів, а порожні коментарі очищуються. Правила з інверсією залишаються на своїх позиціях для збереження логіки винятків.

Шаблони для суміжних інструментів часто повторюються — Node, Next.js і Vite однаково ігнорують node_modules та файли логів —, тому дедуплікація зазвичай скорочує обсяг файлу на 20% або більше.

Проєктний, глобальний та локальний ignore

Комітьте проєктний .gitignore, щоб уся команда користувалася спільними правилами, обмежуючи його виключно файлами самого проєкту. Файли вашої операційної системи — .DS_Store, Thumbs.db, папки редактора — варто налаштувати в глобальному файлі ignore: git config --global core.excludesFile ~/.gitignore_global. Для суто особистих правил в окремому репозиторії використовуйте .git/info/exclude, який ніколи не комітиться.

Lock-файли застосунків (package-lock.json, poetry.lock, Cargo.lock) обов'язково повинні бути закомічені для забезпечення повної ідентичності встановлення пакетів. Щоб перевірити, яке саме правило ігнорує певний файл, виконайте git check-ignore -v path/to/file.

Не допускайте секретів у Git

Шаблон Змінні оточення та секрети ігнорує файли .env, приватні ключі та файли облікових даних, зберігаючи .env.example для документації. Ігнорування захищає лише майбутні коміти: якщо ключ уже був надісланий у репозиторій, негайно перегенеруйте його, адже він назавжди залишається в історії Git. Пов'язані інструменти: калькулятор chmod для налаштування дозволів та генератор robots.txt для пошукових ботів.

Поширені запитання

Куди потрібно покласти файл .gitignore?
У корінь вашого репозиторію, поруч із папкою .git. Ви також можете додавати файли .gitignore у підкаталоги; їхні правила діятимуть відносно цієї папки.
Чому Git продовжує відстежувати файл після додавання в .gitignore?
.gitignore діє лише на невідстежувані файли. Виконайте команду git rm --cached <file> (або git rm -r --cached <folder>) і зробіть коміт: Git припинить відстеження, не видаляючи файл із диска.
Чи потрібно ігнорувати package-lock.json або yarn.lock?
Ні, у застосунках їх обов'язково потрібно комітити. Lock-файли фіксують точні версії залежностей для гарантування однакової збірки на всіх пристроях.
Чи варто додавати .vscode або .idea до .gitignore?
Зазвичай лише персональні конфігурації. Шаблон VS Code ігнорує .vscode/*, але зберігає спільні settings.json, tasks.json і launch.json; шаблон JetBrains ігнорує всю папку .idea.
Як налаштувати ігнорування .DS_Store для всіх проєктів одразу?
Додайте його в глобальний файл ignore: створіть файл ~/.gitignore_global з рядком .DS_Store та виконайте команду git config --global core.excludesFile ~/.gitignore_global.
Як ігнорувати весь вміст папки, окрім одного файлу?
Ігноруйте вміст, а не саму папку, після чого додайте виняток: folder/*, а наступним рядком !folder/keep.txt. Правило folder/ виключить папку цілком, тому окремий файл відновити не вдасться.
Звідки взяті ці шаблони?
Вони адаптовані з офіційного репозиторію github/gitignore за ліцензією CC0, з вилученням застарілих правил. Перевірте згенерований результат згідно зі структурою вашого проєкту.