今天在提交博客更新的时候,遇到Git无法上传文件到仓库的问题,以下是解决办法。
由 AI 大模型(Gemini 2.5 Flash Preview 05-20)生成。
问题
Git 检测到存储库所有权可疑(Dubious Ownership)
这是 Git 2.35 及更高版本中引入的一项安全特性。当 Git 检测到本地存储库(例如 H:/blog)的所有者不是当前用户时,它会阻止一些操作(包括提交、拉取、推送等),以防止潜在的安全风险,比如恶意的第三方在你的系统上运行代码。
具体来说,错误信息指出:
‘H:/blog’ is owned by: ‘S-1-5-32-544’: 存储库 H:/blog 的当前所有者是 SID 为 S-1-5-32-544 的用户或组。这个 SID 通常对应于 Windows 上的 Administrators (管理员) 组。 but the current user is: ‘S-1-5-21…500’: 但当前执行 Git 命令的用户是 SID 为 S-1-5-21…500 的用户,这是一个标准的非管理员用户 SID。
由于当前用户不是存储库的所有者(或者至少不是其原始所有者),Git 认为这种所有权不匹配是“可疑”的,并出于安全考虑阻止操作。
解决此问题的方法
你需要在全局 Git 配置中明确将该目录标记为“安全”:
git config --global --add safe.directory H:/blog
执行这条命令后,Git 就会信任这个目录,即使它检测到所有权不匹配,也会允许你继续执行 Git 操作。