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

如何在.gitignore中忽略除指定目录外的特定文件扩展名

解决Git忽略全局.json但保留config目录下.json的配置问题

直接用下面的配置替换你的.gitignore内容即可:

# 忽略所有.json文件
*.json
# 确保config目录不被Git忽略(父目录的可访问性是子文件规则生效的前提)
!config/
# 保留config目录下的所有.json文件
!config/*.json

你之前的规则无效的原因

  1. 目录名不匹配:你的仓库实际目录是config,但你写的规则里用了configs,完全对应不上,自然不会生效。
  2. 忽略规则的逻辑顺序:Git会按顺序匹配规则,当你先忽略了所有*.json,需要先明确让Git不忽略config目录(虽然*.json本身不会忽略目录,但显式声明!config/能确保Git扫描该目录下的文件,让后续的取消忽略规则生效)。

配置完成后,直接执行git add config/*.json就能把这些配置文件加入版本控制,之后这些文件的变更会被Git自动识别,不需要再用-f参数强制添加。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 23:42:06