重装Windows10后Git Bash无法识别本地旧仓库,新仓库正常
解决Git "unsafe repository" 权限错误
这个错误不是找不到.git文件夹,而是重装Windows后,旧仓库的文件所有权和当前系统用户不匹配,触发了Git的安全保护机制(Git 2.35.2及以上版本新增的仓库权限校验)。新仓库是当前用户创建的,所有权匹配,所以能正常使用。以下是针对性解决方法:
方法1:给单个旧仓库添加安全例外(推荐)
在Git Bash中执行命令,将你的旧仓库路径加入Git的安全目录列表:
git config --global --add safe.directory /home/repo
注意:替换/home/repo为你实际的旧仓库路径(比如Windows路径C:\Users\XXX\Documents\old-repo在Git Bash里要写成/c/Users/XXX/Documents/old-repo)。
方法2:临时关闭全局安全检查(不推荐,有安全风险)
如果有多个旧仓库需要处理,可临时开启全局安全目录通配,但不建议长期使用(会跳过所有仓库的权限校验):
git config --global --add safe.directory '*'
方法3:修改仓库文件夹的Windows所有权
- 在文件资源管理器找到旧仓库文件夹,右键→属性→安全选项卡
- 点击「编辑」→「添加」,输入你的当前Windows用户名,点击「检查名称」确认后添加
- 给该用户勾选「完全控制」权限,点击「应用」「确定」
- 回到Git Bash,重新操作仓库即可
注意事项
- 无需重装Git或配置凭据,此问题与凭据无关
- 优先使用方法1,避免方法2带来的安全隐患
- 确保Git Bash里的路径格式正确,Windows盘符要转成小写加斜杠(比如
C:\→/c/)
内容的提问来源于stack exchange,提问作者RAJ ESH
相关产品推荐
相关产品推荐

