settings.json改动问题?

我在vscode的settings.json中修改了一些内容,但是会被git认为是改动项,如何在不修改.gitignore文件的情况下避免被git认为是改动项?

阅读 662
3 个回答

这个需求。。。
你可以改 vscode 的全局配置,而不是对这个项目的配置,但是这样会对 vscode 打开的所有项目都生效。不然还是老老实实改 .gitignore 吧

如果你改动的时项目下的 /.vscode/setting.json 那么如果在一开始 /.vscode 目录没有添加到 .gitignore 中的话,就会被识别到。

可以检查一下你的 .gitignore 配置项,看看是否添加了 *.code-workspace 这样的工作区配置的忽略项。如果有添加的话,可以把这些修改添加到 project-name.code-workspace 文件中。


或者给Git设置全局忽略 👉 Git中全局忽略提交和.gitignore
但是我觉得除了 .DS_Store 这种,其他忽略规则的添加到全局会造成一些隐患。

使用 git update-index --assume-unchanged 命令可以暂时让 Git 忽略指定文件的改动
若需全局忽略 .vscode/settings.json 文件,可以在全局 .gitignore 文件中添加该条目。不过全局忽略仅对新克隆或新建的仓库生效。

   git update-index --assume-unchanged .vscode/settings.json

如果你想提交一次当前的 .vscode/settings.json 文件状态,然后之后不再追踪任何更改

   git add .vscode/settings.json
   git commit -m "Preserving current settings.json"
   git update-index --skip-worktree .vscode/settings.json

如果你不希望修改项目级别的 .gitignore 文件,还可以在本地仓库的隐藏目录 .git/info/exclude 文件中添加一行 .vscode/settings.json。这样,只有在当前仓库中,该文件才会被忽略。
打开 .git/info/exclude 并添加以下内容:

   .vscode/settings.json

以上方法都能达到避免 .vscode/settings.json 文件的更改被纳入 Git 更改记录的目的,但最推荐的做法是在项目级别的 .gitignore 文件中添加这一条目,因为这种方式更加直观和易于维护,并且对所有克隆该项目仓库的人都有效。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Microsoft
子站问答
访问
宣传栏