跳到主要内容

.gitignore 生成器

按技术栈勾选,秒出 .gitignore

操作系统
编辑器 / IDE
编程语言
框架 / 平台
工具 / 其他
已选 7 项
# 本文件由 摩卡工具箱 · .gitignore 生成器 生成
# https://mokakit.com/tools/gitignore-gen/

# ===== macOS =====
# macOS
.DS_Store
.AppleDouble
.LSOverride
Icon
._*
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

# ===== Windows =====
# Windows
Thumbs.db
Thumbs.db:encryptable
ehthumbs.db
ehthumbs_vista.db
*.stackdump
[Dd]esktop.ini
$RECYCLE.BIN/
*.cab
*.msi
*.msix
*.msm
*.msp
*.lnk

# ===== Linux =====
# Linux
*~
.directory
.Trash-*
.nfs*

# ===== VS Code =====
# VS Code
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
*.code-workspace

# ===== Node.js =====
# Node.js
node_modules/
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
.pnpm-store/
.yarn/

# ===== Next.js =====
# Next.js
.next/
out/
next-env.d.ts

# ===== Vite =====
# Vite
dist/
.vite/

生成完全在浏览器本地完成,不上传任何数据。规则来自社区通用 gitignore 片段,按项目技术栈勾选组合即可;下载后放到仓库根目录生效。

.gitignore 是什么

.gitignore 是 Git 仓库根目录下的一个纯文本文件,里面每一行是一条「忽略规则」,用来告诉 Git:这些文件不要纳入版本控制。它解决的是一个很常见的痛点——操作系统、编辑器、包管理器和编译器都会在仓库里偷偷生成一堆文件(.DS_Store.idea/node_modules/、编译产物……),它们要么体积巨大、要么每台机器都不同,提交进仓库只会让历史膨胀、冲突不断。

写好一份 .gitignore,等于给项目定下了「什么算源码、什么算噪音」的边界。

为什么不直接手写

一个小项目可能只要忽略 3 行,但真实项目往往是多语言、多工具叠加:前端用 Node + VS Code,后端用 Python,部署用 Terraform……每多一个技术栈,就要记一套对应的忽略规则。手写容易漏、也容易写错(比如少了斜杠导致把源码目录也忽略掉)。

本工具把社区长期沉淀的通用规则整理成 50 个模板,你只要按技术栈勾选,右侧就实时拼出一份标准 .gitignore,一键复制或下载即可。

工具覆盖的模板

下面是所有可勾选的模板,按类别分组。勾选后在页面右侧即时生成内容。

操作系统

  • macOS
  • Windows
  • Linux

编辑器 / IDE

  • VS Code
  • IntelliJ / JetBrains
  • Vim
  • Sublime Text
  • Eclipse
  • Xcode
  • Android Studio
  • Emacs

编程语言

  • Node.js
  • Python
  • Java
  • Go
  • Rust
  • C++
  • C#
  • PHP
  • Ruby
  • Swift
  • Kotlin
  • Dart
  • R
  • Scala
  • Haskell
  • Elixir
  • Lua

框架 / 平台

  • Django
  • Flask
  • Laravel
  • Ruby on Rails
  • Next.js
  • Nuxt
  • Angular
  • Svelte / SvelteKit
  • Vue
  • Flutter
  • Unity
  • Android
  • .NET
  • WordPress
  • Terraform

工具 / 其他

  • LaTeX
  • Jupyter Notebook
  • CMake
  • Godot
  • Unreal Engine
  • Vite
  • Maven / Gradle

怎么用生成的文件

  1. 点「下载 .gitignore」,把文件放到项目根目录(文件名就是 .gitignore,没有扩展名);或点「复制」手动粘贴。
  2. 如果是已有仓库、某些文件之前已经被 Git 跟踪过,忽略不会自动生效,需要先取消跟踪: git rm --cached <文件> 然后再提交。
  3. 特殊构建产物本工具没覆盖的,下载后手工补一两行即可。

几个容易踩的坑

  • 依赖目录要忽略,lock 文件要提交node_modules/vendor/target/ 这类由包管理器生成的目录应该忽略;但 package-lock.jsonyarn.lockpoetry.lock 等锁文件建议提交,保证团队装到完全一致的版本。
  • 斜杠有讲究build/ 只忽略当前目录下的 build 文件夹,/build 只忽略根目录的,而 build 会忽略任意层级的 build。不确定时参考本工具生成的写法。
  • 忽略不会删除文件.gitignore 只影响「未来是否跟踪」,已经提交的文件需要 git rm --cached 后才会在仓库里消失(本地文件仍在)。

相关工具

所有生成与下载都在你的浏览器本地完成,本工具不收集、不上传任何数据。

常见问题

.gitignore 是什么?为什么每个项目都需要它?
.gitignore 是 Git 仓库根目录下的一个文本文件,用来告诉 Git 哪些文件不该被纳入版本控制——比如操作系统自动生成的缩略图、编辑器缓存、依赖目录(node_modules)、编译产物和本地配置文件。忽略它们能避免把大体积或无意义的文件提交进仓库,保持仓库干净、冲突更少。
生成的 .gitignore 怎么用?
点「下载 .gitignore」把文件放到你的项目根目录即可(文件名就是 .gitignore,没有扩展名)。也可以点「复制」后手动粘贴。已经在被跟踪的文件不会自动忽略,需要用 git rm --cached 移除后再忽略。
规则内容准确吗?会误删我的文件吗?
.gitignore 只是「忽略清单」,本工具不会触碰你电脑上的任何文件,生成与下载都在浏览器本地完成。规则整理自社区广泛使用的通用 gitignore 片段;若你的项目有特殊构建产物,建议下载后再手工补一两行。
要不要把依赖目录(如 node_modules)提交到仓库?
一般不要。node_modules、vendor、target 这类依赖目录体积大且可由包管理器重建,应该忽略。但 lock 文件(package-lock.json、yarn.lock 等)通常建议提交,以保证团队成员安装到完全一致的版本——它们不在本工具的忽略范围内。