DevToolPal
RU

Генератор .gitignore

Создайте файл .gitignore, объединив шаблоны для ваших языков, фреймворков, редакторов и операционных систем.

Работает локально, без загрузки на сервер

Параметры

Шаблоны · Выбрано: 4
Языки
Фреймворки
Сборка и инфраструктура
Игровые движки
Редакторы и IDE
Операционные системы
Прочее

.gitignore

Символов: 0 · 0 B

Что делает инструмент

Генератор .gitignore собирает файл .gitignore для вашего репозитория из готовых шаблонов. Выберите языки, фреймворки, инструменты сборки, игровые движки, редакторы и операционные системы проекта, и инструмент объединит их правила в один файл с заголовком ### Название ### для каждого раздела — его можно сразу скопировать или скачать.

В комплекте около шестидесяти шаблонов из коллекции github/gitignore: Node.js, Python, Java, Go, Rust, .NET, Swift, PHP-фреймворки Laravel и Symfony, Next.js, Flutter, Android, Terraform, Unity, Unreal Engine, Godot, VS Code, IDE от JetBrains, Vim, Emacs, macOS, Windows, Linux и другие. Всё выполняется в браузере, никакие запросы не отправляются.

Как пользоваться

  1. Нажимайте на шаблоны в списке, чтобы добавить их. Поиск понимает и распространённые синонимы: «typescript» найдёт Node.js, «intellij» — JetBrains.
  2. Выбранные шаблоны показываются сверху в виде меток в порядке выбора, и файл следует этому порядку. Нажмите на метку, чтобы убрать её, или Очистить, чтобы начать заново.
  3. Записи, нужные только вашему проекту, добавьте в Свои правила через запятую, например .env, /dist, *.local. Они попадут в конец, в раздел ### Custom ###.
  4. Решите, сохранять ли поясняющие комментарии шаблонов и убирать ли правила, которые уже есть в предыдущем шаблоне.
  5. Скопируйте результат или скачайте его. Скачанный файл называется .gitignore; сохраните его в корне репозитория.

Выбор хранится в адресе страницы, поэтому закладка или ссылка воспроизводят тот же файл.

Пример

Если выбрать Node.js, macOS и VS Code, добавить своё правило .env.local и выключить комментарии, получится такой файл (с сокращениями):

### Node.js ###
logs
*.log
npm-debug.log*
…
node_modules/
…

### macOS ###
.DS_Store
.AppleDouble
.LSOverride
…

### VS Code ###
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
!.vscode/*.code-snippets
!*.code-workspace
*.vsix

### Custom ###
.env.local

Шаблоны, начинающиеся с !, снова включают то, что исключило предыдущее правило: здесь общие настройки, задачи и конфигурации запуска VS Code остаются в репозитории, а личное состояние редактора игнорируется. Добавление .env в свои правила ничего бы не изменило — шаблон Node.js его уже содержит.

Советы

  • Правила для личных инструментов (swap-файлы редактора, метаданные ОС) удобно держать в глобальном файле исключений: они действуют во всех репозиториях без повторения.
  • Косая черта в конце, как в build/, совпадает только с каталогами; в начале, как в /build, — привязывает правило к корню репозитория.
  • Команда git check-ignore -v <путь> покажет, какая строка какого файла исключений совпала с путём.
  • Не рассчитывайте, что .gitignore защитит уже закоммиченные секреты: смените их и перепишите историю.

Частые вопросы

› Откуда взяты шаблоны?

Это встроенные копии официальной коллекции github/gitignore, которую GitHub публикует как общественное достояние по CC0. При работе инструмент ничего не скачивает: шаблоны входят в состав страницы.

› Почему файл всё ещё отслеживается после добавления в .gitignore?

.gitignore действует только на неотслеживаемые файлы. Если файл уже был закоммичен, уберите его из индекса командой git rm --cached <файл> (для папки — с -r) и сделайте коммит; файл останется на диске и дальше будет игнорироваться.

› Что делает «Убирать повторяющиеся правила»?

Многие шаблоны содержат одинаковые правила: Java и Kotlin игнорируют *.class, C и C++ — *.o. С включённой опцией правило записывается только при первом появлении, а комментарий-заголовок, все правила под которым удалены, тоже исчезает. Выключите её, чтобы получить каждый шаблон ровно в опубликованном виде.

› Нужно ли коммитить файл .gitignore?

Да. Закоммиченный .gitignore действует для всех, кто клонирует репозиторий. Правила, касающиеся только вашего компьютера, например редактора или ОС, можно вынести в глобальный файл исключений (git config --global core.excludesFile ~/.gitignore_global).