2026/2/18 1:45:10
网站建设
项目流程
郫都区网站建设,宁波网站建设制作,云主机购买,房地产市场调查问卷下面是一个.gitignore文件#xff0c;我们将会对这个文件里的内容进行分类解读#xff0c;通过本文#xff0c;你将可以根据需要撰写自己的.gitignore文件。
# Node.js and frontend-related files
node_modules/
dist/
*.log
*.env
yarn.lock
package-lock.json
.vscode/
.…下面是一个.gitignore文件我们将会对这个文件里的内容进行分类解读通过本文你将可以根据需要撰写自己的.gitignore文件。# Node.js and frontend-related files node_modules/ dist/ *.log *.env yarn.lock package-lock.json .vscode/ .idea/ *.tsbuildinfo # JetBrains IDEs (e.g., IntelliJ IDEA, PhpStorm, WebStorm) .idea/ # OS generated files .DS_Store Thumbs.db # Backend related files *.iml *.jar *.war *.ear *.class # Maven mvnw mvnw.cmd.gitignore文件 是用来让 Git 自动忽略那些不需要提交到代码仓库的文件 /和文件夹的工具。只要用 Git 管理项目从项目创建时就要加 .gitignore —— 因为项目里一定会有不需要共享给团队或者提交到仓库的文件。比如说一些环境配置文件、编译产生的文件、系统文件、涉及隐私的文件。一、斜杠/结尾带斜杠xxx/仅匹配「文件夹」不匹配同名文件比如不会误忽略叫node_modules的文件开头带斜杠/xxx/限定「根目录」非根目录的同名文件夹不匹配无斜杠node_modules既匹配文件夹也匹配同名文件且匹配所有层级不推荐容易误匹配。写法匹配范围举例项目结构node_modules/匹配所有层级下的node_modules文件夹不管在根目录/子目录根目录node_modules/、frontend/node_modules/都会被忽略/node_modules/仅匹配根目录下的node_modules文件夹只忽略node_modules/不忽略frontend/node_modules/frontend/node_modules/仅匹配frontend子目录下的node_modules只忽略frontend/node_modules/不忽略根目录/其他目录的node_modules匹配所有层级下的node_modules文件夹和文件夹不管在根目录/子目录根目录node_modules/、frontend/node_modules/、frontend/node_modules.txt都会被忽略这份.gitignore配置覆盖了文件后缀、文件夹、特定文件名三类匹配规则核心遵循 Git 官方的.gitignore匹配语法我按「规则类型原理生效范围」拆解帮你彻底理解每一行的匹配逻辑二、 「后缀匹配」*.xxx*是「通配符」匹配任意字符除路径分隔符/*.xxx表示「所有层级下后缀为.xxx的文件」。例如配置行匹配原理生效范围*.log*匹配任意文件名前缀.log固定后缀 → 匹配所有.log日志文件项目所有目录根目录/子目录都算*.env匹配所有.env环境配置文件比如根目录.env、frontend/.env所有层级*.tsbuildinfo匹配 TypeScript 编译生成的.tsbuildinfo文件如frontend/*.tsbuildinfo所有层级⚠️ 关键*.xxx不会匹配「文件夹」比如不会误忽略名为test.log的文件夹仅匹配文件。三、 「精确文件名匹配」无通配符、无/直接写文件名无通配符、无/表示「匹配所有层级下同名的文件或文件夹」。例如配置行匹配原理生效范围yarn.lock精确匹配名为yarn.lock的文件根目录/frontend 下的都算所有层级package-lock.json精确匹配 npm 生成的package-lock.json文件任意目录下所有层级mvnw精确匹配名为mvnw的文件根目录/backend 下的都算所有层级⚠️ 注意这类规则会匹配文件夹比如如果有个yarn.lock/文件夹也会被忽略如果只想匹配文件可加后缀限定但这类文件名本身是固定文件无需额外处理。四、 「文件夹匹配」xxx/结尾带/是「文件夹专属匹配规则」表示「匹配所有层级下名为xxx的文件夹」不会匹配同名文件。例如配置行匹配原理生效范围.idea/匹配所有层级下的.idea文件夹JetBrains IDE 生成的配置目录如根目录/.idea、frontend/.idea所有层级⚠️ 补充如果写成/\.idea/开头加/则仅匹配「根目录下的.idea文件夹」子目录的.idea不会被忽略你这里写的.idea/是全局匹配更符合实际需求所有 IDE 配置目录都该忽略。五、 「系统生成文件」精确文件名这类是不同操作系统自动生成的无用文件用「精确文件名」匹配覆盖所有层级。例如配置行匹配原理生效范围.DS_Store匹配 macOS 系统生成的文件夹配置文件任意目录下的.DS_Store所有层级Thumbs.db匹配 Windows 系统生成的缩略图缓存文件任意目录下的Thumbs.db所有层级补充验证规则是否生效的小技巧如果不确定某行规则是否匹配目标文件可执行 Git 命令验证# 检查根目录的 .idea 文件夹是否被忽略gitcheck-ignore -v .idea/# 检查 frontend 下的 node_modules 是否被忽略如果加了 node_modules/ 规则gitcheck-ignore -v frontend/node_modules/输出「.gitignore:行号:规则 目标路径」→ 规则生效无输出 → 规则未匹配需调整写法。