雪下不下来都阻挡不了我的白,我白不白都掩饰不了一生的荒唐。——余秀华《雪》

https://github.com/github/gitignore

GitHub/gitignore:程序员最常用但常被忽略的宝藏仓库

你是否每次创建新项目时都要手动添加 .gitignore 文件?是否曾因为忘记忽略某些目录,导致 .DS_Storenode_modulestarget 等无关文件上传到仓库,引发冲突或污染历史记录?今天介绍的这个项目,或许能让你彻底告别这些烦恼。

项目简介

github/gitignore 是 GitHub 官方维护的一个开源仓库,收集了适用于各种语言、框架和工具的 .gitignore 模板,已经累计了数万个 Star。

这个仓库的目标很简单——为世界上的开发者提供标准化、可复用的 .gitignore 文件。无论你用的是 Python、Java、Go、Node.js,还是 Unity、LaTeX、Emacs,都能在这里找到适配的忽略规则。

仓库结构

仓库结构很清晰,主要分为以下几类:

  • Global/:全局忽略规则,比如 macOS、Windows、Linux 等系统特有的文件。

  • Community/:社区贡献的一些特殊模板。

  • 顶级目录下:各种主流语言和工具的 .gitignore 文件,比如 Python.gitignoreJava.gitignoreVisualStudio.gitignore 等。

快速使用方式

你可以直接从这个仓库复制 .gitignore 文件到你的项目根目录,或者使用 GitHub 创建新仓库时的模板功能:

  1. 新建 GitHub 仓库时,选择 Add .gitignore

  2. 在下拉框中选择合适的语言或框架;

  3. GitHub 会自动添加对应模板的 .gitignore 文件。

如果你是命令行爱好者,也可以使用 GitHub CLI 快速初始化:

1
2
gh repo create my-project
curl https://raw.githubusercontent.com/github/gitignore/main/Python.gitignore -o .gitignore

为什么推荐它?

  • 覆盖全面:支持数百种语言、工具、框架;

  • 持续更新:每年都有社区贡献者提交 PR 来更新规则;

  • 避免踩坑:少上传无关文件、提升 CI 效率、保护隐私(如 .env);

  • 开箱即用:几乎无需修改,拷贝即用。

小技巧

  1. 可以组合多个 .gitignore 文件内容来适配更复杂的项目结构;

  2. 如果多个项目公用一套规则,可以配置全局 .gitignore~/.gitignore_global)并通过以下命令启用:

1
git config --global core.excludesfile ~/.gitignore_global
  1. 如果你用的是 JetBrains 系列 IDE,可以直接用里面的 .gitignore 插件,内置支持 GitHub/gitignore 模板。

总结

.gitignore 虽然是一个非常小的文件,但维护不好会带来一系列麻烦。与其每次都从零写起,不如直接使用 github/gitignore 提供的标准模板。它是那种“看起来不起眼,但一直默默帮你减少出错率”的好工具。

下次新建项目,不妨多点两下鼠标,善用它。