You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

C# MVC .NET Core项目中.gitignore无法屏蔽appsettings.json的问题求助

解决.gitignore无法排除appsettings.json的问题

这是个很常见的坑——当你已经把appsettings.json提交到Git仓库后,后续添加的.gitignore规则不会立刻生效,因为Git已经在追踪这个文件的变更了。.gitignore的作用是告诉Git忽略那些从未被纳入追踪的文件,对已经在索引里的文件无效。

下面是具体的解决步骤:

  • 首先,把appsettings.json从Git的追踪索引中移除,但保留本地文件(这一步很关键,别漏了--cached参数):
    git rm --cached appsettings.json
    
    如果你的项目里有多个子目录都包含这个文件,可以用递归匹配:
    git rm --cached **/appsettings.json
    
  • 检查你的.gitignore文件,确保规则正确无误:
    确认里面包含以下任意一条(两条都加也没问题):
    appsettings.json
    **/appsettings.json
    
    注意检查拼写和大小写——虽然Windows系统不区分大小写,但Git在部分配置下会严格区分,尽量保持文件名和规则一致。
  • 提交这个变更,让Git正式停止追踪该文件:
    git commit -m "Stop tracking appsettings.json to exclude sensitive connection strings"
    
  • 完成后,再修改appsettings.json,你会发现它不再出现在Git的变更列表里了。

额外提醒:如果你的项目还有appsettings.Development.jsonappsettings.Staging.json这类环境配置文件,也可以把它们加到.gitignore里,避免提交敏感的环境配置信息。

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

火山引擎 最新活动