VS 版本更新git安全保护问题的解决

问题:

我可能移动了一个VS C# 项目,然后,发现里面的git版本检测不能用了

正在打开存储库:

X:\Prj_C#\3D

fatal: detected dubious ownership in repository at 'X:/Prj_C#/3DSnapCatch'

'X:/Prj_C#/3D' is owned by:

'S-1-5-32-544'

but the current user is:

'S-1-5-21-900372847-2521881049-1049374117-1001'

To add an exception for this directory, call:

git config --global --add safe.directory 'X:/Prj_C#/3DSnapCatch'

一个做了很久的项目,然后,COPY来,COPY去,后来,客户发了问题要修改,看git版本,VS 里面的git给出了安全的提示。就是不同的用户,你不能访问了。估计是VS登陆的时候,用了不同的用户名,也没注意,总之,VS里面又包了一层。

奇怪的是如果用本地的,git shell,却是可以的:

所以,这个安全目录,感觉就是VS搞的一个附加的安全措施。


解决办法:

1确认安全目录:

确定项目目录下,所有的安全git工作目录:

复制代码
git config --global --get-all safe.directory

比如我的:

复制代码
X:\Prj_C#\3DSnapCatch>git config --global --get-all safe.directory
X:/Prj_C#/3DSnapCatch

如果有多个重复的,那么就不行,会有问题。比如:

复制代码
X:\Prj_C#\3DSnapCatch>git config --global --get-all safe.directory
X:\Prj_C#\3DSnapCatch
X:\Prj_C#\3DSnapCatch

2 移除所有安全目录

如果有重复的,我们需要运行下面的代码:移除所有的安全目录:

复制代码
X:\Prj_C#\3DSnapCatch>git config --global --unset-all safe.directory

【最好的方法,可以上来先移除所有的安全目录,重做一边】

3 重新构建安全目录:

复制代码
X:\Prj_C#\3DSnapCatch>git config --global --add safe.directory "X:/Prj_C#/3DSnapCatch"

4 确认一下:

复制代码
X:\Prj_C#\3DSnapCatch>git config --global --get-all safe.directory
X:/Prj_C#/3DSnapCatch

验证:

相关推荐
qqxhb7 小时前
04|最小工程素养:文件、命令行、依赖、环境变量、Git
git·环境·依赖·工程·项目结构
国家二级编程爱好者12 小时前
删除typora文档没有引用的资源文件
git·python
Rsun0455116 小时前
Git相关面试题
git
rogerogers17 小时前
在 VS Code Remote SSH 中完美配置 GPG 自动签名 (macOS 到 Ubuntu 24.04)
git·visual studio code
qiuyuyiyang18 小时前
Nginx 反向代理之upstream模块以及完整配置反向代理示例
git·nginx·github
勇闯逆流河20 小时前
【Linux】Linux基础开发工具(git、dbg)
linux·运维·服务器·开发语言·c++·git
Wpa.wk20 小时前
IDE中配置Git常见操作
ide·经验分享·git·测试工具
NaCl鱼呜啦啦2 天前
Git 仓库损坏修复指南:从诊断到恢复
git
huazi992 天前
AI编程(一):Trae+Git 应用开发
git·ai编程·trae
badhope2 天前
GitHub热门AI技能Top20实战指南
前端·javascript·人工智能·git·python·github·电脑