当前位置: 首页 > news >正文

.gitignore文件中的各种写法详解

🧩 一、常见写法及含义详解

写法含义示例说明
*.log忽略所有目录下以 .log 结尾的文件app.log, logs/error.log 都会被忽略
filename忽略所有目录下名为 filename 的文件.npmrc, package-lock.json
/filename只忽略项目根目录下的 filename 文件不会忽略子目录里的 .npmrc
dirname/忽略名为 dirname 的目录(包括其内容)/node_modules/ 会忽略整个 node_modules 目录
**/filename忽略任意层级子目录下的 filename 文件比如 src/utils/.npmrc 也会被忽略
dir/**/*.txt忽略某个目录及其子目录下的所有 .txt 文件比如 dir/logs/a.txt 被忽略

🔍 二、具体举例说明

假设你的项目结构如下:

my-project/
├── .npmrc
├── package.json
├── hvigorfile.ts
├── .gitignore
├── src/
│   └── .npmrc        ← 子目录也有一个 .npmrc
└── node_modules/

情况 1️⃣:只写 .npmrc

.npmrc
  • ✅ 效果:Git 会忽略 所有位置的 .npmrc 文件
  • ❌ 包括根目录和 src/ 等子目录中的 .npmrc

情况 2️⃣:写成 /.npmrc

/.npmrc
  • ✅ 效果:只会忽略 项目根目录下的 .npmrc
  • ❌ 不会忽略子目录中的 .npmrc

情况 3️⃣:写成 **/.npmrc

**/.npmrc
  • ✅ 效果:忽略 所有子目录下的 .npmrc 文件
  • ⚠️ 常用于确保不会遗漏任何地方的配置文件

✅ 三、总结表格

写法是否忽略根目录文件是否忽略子目录文件推荐用法
.npmrc✅ 推荐,通用性强
/.npmrc❌ 不推荐,容易漏掉子目录
**/.npmrc✅ 和 .npmrc 效果一样,更显式

💡 四、建议

你现在 .gitignore 中已经写了这些:

/node_modules
/oh_modules
/local.properties
/.idea
**/build
/.hvigor
...
  • /node_modules → 只忽略根目录下的 node_modules,不包括子模块中的
  • 如果你想忽略所有位置的 node_modules,应写成:
**/node_modules

同理:

原写法更通用写法说明
/node_modules**/node_modules忽略所有位置的 node_modules
/oh_modules**/oh_modules忽略所有位置的 oh_modules
/.hvigor**/.hvigor忽略所有位置的 .hvigor 目录

✅ 最终建议 .gitignore(更全面)

# 忽略依赖目录
**/node_modules
**/oh_modules# 忽略构建输出
**/build
**/.hvigor# 忽略配置与敏感文件
.local.properties
.npmrc# 忽略 IDE 文件
**/.idea
**/.appanalyzer
**/.clangd
**/.clang-format
**/.clang-tidy# 忽略临时测试文件
**/.test# 忽略编译缓存
.cxx
http://www.dtcms.com/a/278546.html

相关文章:

  • JMeter 连接与配置 ClickHouse 数据库
  • JavaScript 高级封装方法指南
  • 将CSDN文章导出为PDF
  • RabbitMQ的介绍与安装
  • 嵌入式小记
  • 亚马逊自养号技术栈解析:从环境隔离到AI行为模拟的实战指南
  • C++编程语言:标准库:内存和资源管理(Bjarne Stroustrup)
  • 对偶原理与蕴含定理
  • UART寄存器介绍
  • 解决安装 make 时 “configure: error: C compiler cannot create executables” 报错
  • 用于监测线性基础设施的分布式声学传感:现状与趋势
  • week3
  • 阿里云ODPS多模态数据处理实战:MaxFrame的分布式AI数据管道构建
  • ISO 15765-2TP传输协议
  • 迁移学习之图像预训练理解
  • 【双链表】【数组】
  • ubuntu(22.04)系统上安装 MuJoCo
  • 计算机网络(基础概念)
  • 网络协议和基础通信原理
  • qt-- 编译工具-Cmake的使用
  • 一文读懂循环神经网络(RNN)—语言模型+读取长序列数据(2)
  • Python----NLP自然语言处理(NLP自然语言处理解释,NLP的发展历程)
  • QT——文件操作类 QFile和QTextStream
  • 【同等学力-计算机-真题解析】离散数学-图论(握手定理、欧拉公式)
  • ARMv8.1原子操作指令(ll_sc/lse)
  • #Paper Reading# Apple Intelligence Foundation Language Models
  • 【Linux网络】:HTTP(应用层协议)
  • 深入解析 Transformer:开启自然语言处理新时代的革命性模型
  • uni-app在安卓设备上获取 (WIFI 【和】以太网) ip 和 MAC
  • 游戏框架笔记