最近我的主硬盘驱动器发生故障 (GJ Sabrent),不得不在新驱动器上从头开始重新安装 Windows。我一直在使用 bitlocker 加密将我所有的 VS 和 VSCode GIT 项目存储在第二个 SSD 上。打开项目并尝试访问 GIT 功能时,我收到以下错误,即使
.git/
目录仍然存在。
git log failed with code 128: fatal: not a git repository (or any of the parent directories):
此外,当我尝试构建或编辑文件时,我不断遇到随机问题,在 VS 和 VSCode 中写入权限都被拒绝。
查看驱动器根文件夹的权限后,我发现所有权仍然指的是旧机器上的旧用户。
环顾四周,我发现有几种方法可以解决这个问题。
恢复整棵树的文件权限
icacls.exe .\Users_old\ /reset /t /c /l
takeown /R /A /F .\Users_old\ /D N
icacls foldername /grant Administrators:F /T /C
我已经尝试了这两个,现在文件夹的权限看起来是正确的。但它仍然没有看到
.git
目录。
我已经尝试在驱动器上的一个新的顶级文件夹中再次克隆一个 repo,但也有权限被拒绝的问题。
.git
目录是否需要一些特殊权限?有没有办法在驱动器上重置所有这些?有没有办法获得驱动器的所有权并递归修复所有权限?
编辑:顺便说一句,这是在 Windows 11 上。