You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改.gitignore仅将指定node_modules包纳入Git版本控制?

配置.gitignore保留指定node_modules子目录的方法

要实现仅将/node_modules/@my-organization/my-package纳入版本控制、忽略其他node_modules内容的需求,你可以按以下规则编写.gitignore文件:

# 忽略整个node_modules目录
/node_modules/

# 取消忽略@my-organization目录(为后续保留子目录做铺垫)
!/node_modules/@my-organization/

# 忽略@my-organization下除目标包外的所有内容
/node_modules/@my-organization/*

# 取消忽略目标包及其内部所有层级的文件和目录
!/node_modules/@my-organization/my-package/
!/node_modules/@my-organization/my-package/**/*

规则说明:

  • 第一行/node_modules/:优先标记整个node_modules目录为忽略,斜杠确保匹配的是目录而非同名文件。
  • 第二行!/node_modules/@my-organization/:反向取消对@my-organization目录的忽略,让Git继续处理该目录下的子规则。
  • 第三行/node_modules/@my-organization/*:忽略@my-organization目录下的所有直接子项(比如同组织下的其他包),只保留目标包的路径。
  • 最后两行:明确保留my-package目录,以及其内部所有层级的文件和子目录,**/*用于递归匹配所有嵌套内容。

注意事项:

如果之前已经将node_modules目录提交到Git缓存中,需要先清除缓存再重新添加,否则旧的忽略规则会生效:

git rm -r --cached node_modules
git add .gitignore
git add node_modules/@my-organization/my-package

内容的提问来源于stack exchange,提问作者johann1301s

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 20:15:37