.gitignore 生成器

选择此代码仓库使用的全部技术栈。

操作系统和编辑器规则通常适合放在你的全局 Git 排除文件中。

下一步:检查规则

选择仓库中使用的技术栈,生成用于忽略构建产物、已安装依赖和本地环境文件的项目 .gitignore。可以同时选择多个技术栈。可选的操作系统和编辑器规则会单独显示,方便你将个人偏好放进全局 Git 排除文件。

生成并使用忽略规则

  1. 1

    选择项目技术栈

    选中仓库使用的全部技术栈。例如,同时使用 Laravel 和 Node.js 构建前端的 PHP 应用,应选择两者。

  2. 2

    按需添加个人规则

    选择操作系统或编辑器,查看单独列出的全局排除规则。如果现有全局文件已经涵盖这些规则,可以不选。

  3. 3

    检查后复制或下载

    检查项目规则。将规则复制到仓库根目录的 `.gitignore` 文件中,或下载 ZIP 文件并将其中的 `.gitignore` 解压到该目录。可选的个人规则应放进全局 Git 排除文件。

  4. 4

    提交前再次核对

    将项目 `.gitignore` 提交到仓库,让团队成员也能使用。确认需要保留的文件,尤其是示例文件和依赖锁定文件,仍能被 Git 跟踪。

各类规则应该放在哪里?

规则类型 放置位置 示例
构建产物和已安装依赖 提交到仓库的 .gitignore node_modules/、vendor/、__pycache__/
本地环境变量文件 项目的 .gitignore .env 和本地 .env.* 变体
个人操作系统和编辑器文件 全局 Git 排除文件;仅对一个仓库生效时使用 .git/info/exclude Finder 元数据或编辑器备份
协作者需要的文件 适当时继续交由 Git 跟踪 .env.example、package-lock.json、composer.lock、Gemfile.lock

Git 会读取项目的 .gitignore、仓库本地的 .git/info/exclude,以及个人设置 core.excludesFile 指定的文件。提交 .gitignore 后,项目规则会随仓库共享;个人规则通常只在你的电脑上生效。详情参阅 Git 忽略规则手册和 GitHub 的忽略文件指南。

示例:包含 Python 脚本的 Node.js 服务

选择 Node.js 和 Python。项目文件会合并 node_modules/ 等已安装依赖、dist/ 等 Node 构建产物,以及 __pycache__/、.venv/ 等 Python 生成的文件所需的规则。本地 .env 会被排除,同时仍可跟踪 .env.example。如果你使用 Mac 和 Visual Studio Code,可以选择对应的个人选项,单独查看它们的规则。保存前请结合实际仓库检查两份结果。

生成器依据所选模板生成规则,无法查看你的文件,也无法判断名为 dist/ 的目录里是构建产物还是需要提交的源代码。如规则与项目冲突,请缩小匹配范围或删除规则。用 git check-ignore -v path/to/file 查看哪条规则命中了尚未跟踪的文件。GitHub 的模板集合可以作为技术栈和编辑器规则的参考,但仍需检查你自己的仓库。

环境文件与锁定文件

忽略 .env 有助于避免本地凭据进入新的提交,但不会清除已经提交的密钥。如果密钥已经进入 Git 历史,需要停止跟踪相关文件、确认密钥被复制到哪些地方,并轮换凭据。只有在内容是占位符、没有真实密钥时,才保留经过清理的 .env.example。生成的 .gitignore 已包含 !.env.example 例外,因此范围更广的 .env.* 规则不会隐藏示例文件;如果编辑规则,请保留该例外。

对于应用,建议提交依赖锁定文件,以便重现选定的依赖版本。npm 建议提交 package-lock.json,Composer 建议提交 composer.lock。库项目的惯例可能不同,请遵循项目的构建和发布规范。

常见问题

忽略规则只影响尚未被 Git 跟踪的文件。要停止跟踪,同时保留本地副本,请运行 git rm --cached path/to/file,然后提交这次移除操作。如果文件包含凭据,请轮换凭据,并检查 Git 历史和其他副本。

通常应继续跟踪清理过的 .env.example 和应用的依赖锁定文件。示例文件说明所需的环境变量名;锁定文件为团队成员和部署环境固定依赖版本。请确认示例文件没有真实密钥。

可以。选择同一仓库使用的全部技术栈。生成器会将选中的项目规则合并到一个 .gitignore 中;如果你的项目对某些路径另有用途,请检查结果。

跨仓库使用的个人规则应放在全局 Git 排除文件中。未设置 XDG_CONFIG_HOME 时,Git 默认使用 ~/.config/git/ignore;你也可以用 core.excludesFile 指定其他路径。仅针对当前仓库的私人规则可放在 .git/info/exclude。除非团队需要,否则不要把单独生成的个人规则加入共享的项目文件。

你选择的技术栈,以及可选的操作系统或编辑器选项,会发送到服务器用于生成规则。在多步骤流程中,这些选项也会出现在页面 URL 中。不要在 URL 中放入密钥。工具只根据选项生成规则,不会读取你的仓库或上传仓库文件。

相关工具

此工具还提供其他语言版本