不要忽略 .gitignore

使用 .gitignore 文件是提高代码质量和 Git 仓库的最佳实践。
65 位读者喜欢这个。
Business woman on laptop sitting in front of window

图片来源:Mapbox Uncharted ERG, CC-BY 3.0 US

我注意到许多开发人员不使用 .gitignore 文件,即使使用它来指定您不希望 Git 在版本控制中跟踪的文件是最佳实践。因为 .gitignore 可以提高您的代码质量,所以您不应该在您的仓库中忽略.gitignore

什么是 .gitignore?

您工作 Git 仓库中的文件可以是

  1. 未跟踪:尚未暂存或提交的更改
  2. 已跟踪:已暂存或提交的更改
  3. 已忽略:您告诉 Git 忽略的文件

有些文件您希望 Git 忽略并且不在您的仓库中跟踪。这些文件包括许多自动生成或平台特定的文件,以及其他本地配置文件,例如

  1. 包含敏感信息的文件
  2. 编译后的代码,例如 .dll.class
  3. 系统文件,如 .DS_StoreThumbs.db
  4. 包含临时信息的文件,例如日志、缓存等。
  5. 生成的文件,例如 dist 文件夹

如果您不希望 Git 在您的仓库中跟踪某些文件,则没有可以使用的Git 命令。(虽然您可以使用 git rm 命令停止跟踪文件,例如git rm --cached。)相反,您需要使用 .gitignore 文件,这是一个文本文件,告诉 Git 哪些文件不跟踪。

创建 .gitignore 文件很容易;只需创建一个文本文件并将其命名为 .gitignore。记住在文件名的开头添加一个点 (.)。就是这样!

.gitignore 文件的编写规则

根据文档,“.gitignore 文件中的每一行都指定一个模式。”

在这种上下文中,“模式”可以指特定的文件名,或者指文件名的一部分与通配符组合。换句话说,example.txt 是一个有效的模式,它匹配名为 example.txt 的文件,而 ex*txt 是一个有效的模式,它匹配名为 example.txt 的文件以及名为 export.txt 的文件。

以下是一些基本规则,可帮助您正确设置 .gitignore 文件

  1. 任何以井号 (#) 开头的行都是注释。
  2. \ 字符转义特殊字符。
  3. / 字符表示该规则仅适用于位于同一文件夹中的文件和文件夹。
  4. 星号 (*) 表示任意数量的字符(零个或多个)。
  5. 两个星号 (**) 指定任意数量的子目录。
  6. 问号 (?) 替换零个或一个字符。
  7. 感叹号 (!) 指定反转规则(即,它包括先前模式排除的任何文件)。
  8. 空行将被忽略,因此您可以使用它们添加空格并使您的文件更易于阅读。
  9. 在末尾添加 / 会忽略整个目录路径。

本地与全局 .gitignore 文件

有两种类型的 .gitignore 文件

  • 本地:放置在您的 Git 仓库的根目录中,仅在该仓库上工作,并且必须提交到仓库
  • 全局:放置在您主目录的根目录中,影响您在机器上使用的每个仓库,不需要提交

许多开发人员在其项目仓库中使用本地 .gitignore 文件,但很少有人使用全局 .gitignore 文件。使用全局文件最显着的优点是您无需提交即可使用它,并且进行一项更改会影响您的所有仓库。

Git ignore 的优势

除了确保特定文件不被 Git 跟踪之外,使用 .gitignore 文件还有其他优势

  1. 它通过忽略不需要的文件,帮助您保持代码仓库的整洁。
  2. 它使您的仓库大小保持在可控范围内,如果您正在处理大型项目,这将特别有帮助。
  3. 您进行的每次提交、推送和拉取请求都将是干净的。

结论

Git 很强大,但最终,它只是另一个计算机程序。使用最佳实践并保持代码仓库稳定是团队的共同努力,而其中一部分就是使用 .gitignore 文件。

接下来阅读什么
标签
User profile image.
我是一位技术爱好者。只要有机会,我就喜欢为各种项目做贡献。您可以在我的网站 aCompiler 上找到我

2 条评论

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 许可。
© . All rights reserved.