.gitignore 文件用于告诉 Git 哪些文件或目录应被忽略,不纳入版本控制。以下是编写 .gitignore 的一些基本规则:
空行和注释:
- 空行会被忽略。
- 以
#开头的行是注释,会被忽略。
匹配规则:
- 通配符
*:匹配零个或多个字符。例如,*.log会忽略所有.log文件。 - 斜杠
/:用于表示路径。如果在行首使用/,则表示从仓库根目录开始;如果不使用,表示从任何子目录开始。- 例如,
/config.php表示根目录下的config.php文件,而config.php可以匹配任意位置的config.php.
- 例如,
- 双星号
**:表示任意深度的子目录。例如,logs/**将忽略所有名为logs的文件夹及其所有内容。
- 通配符
排除规则:
- 使用感叹号
!来排除某个文件或目录,即使它符合其他忽略规则。- 例如:
上面的例子将忽略所有*.log !important.log.log文件,但不会忽略名为important.log的文件。
- 使用感叹号
特定文件夹和文件:
- 可以直接列出需要忽略的特定文件夹或文件,例如:
/node_modules/ /dist/ .env
- 可以直接列出需要忽略的特定文件夹或文件,例如:
示例
一个典型的 .gitignore 文件可能如下所示:
# 忽略日志文件
*.log
# 忽略 node_modules 目录
node_modules/
# 忽略构建输出目录
/dist/
# 忽略环境变量配置文件
.env
# 只保留重要日志文件
!important.log
# 忽略所有临时文件(以 ~ 结尾)
*~
可以根据项目需要自由组合以上规则来创建适合自己的 .gitignore 文件。
内容由零声教学AI助手提供,问题来源于学员提问




