gpt4 book ai didi

git - 我无法在 Git 中将父目录添加到 *safe.directory*

转载 作者:行者123 更新时间:2023-12-04 19:25:08 25 4
gpt4 key购买 nike

将 Git 更新为 v2.35.2.windows.1 后我收到以下错误:

fatal: unsafe repository ('F:/GitHub/my-project' is owned by someone else)
To add an exception for this directory, call:

git config --global --add safe.directory F:/GitHub/my-project


我尝试将我的项目的父目录添加到 .gitconfig ,但它不起作用。
[safe]
directory = F:/GitHub/
directory = F:/Private/
  • 有解决方法吗?
  • “'x'归他人所有”实际上是什么意思?

  • 我不想将我正在处理的每个项目都添加到 .gitconfig文件。

    最佳答案

    回答
    这似乎与此漏洞公告有关:
    https://github.blog/2022-04-12-git-security-vulnerability-announced/
    我认为这与您的电子邮件关系不大,而与文件系统上目录的所有者关系更大。
    您当前登录的用户是否也是该文件夹的所有者?
    父文件夹呢?
    另外,您是从存储库目录中调用 git 吗?
    更新只有几个小时,所以我猜事情还在不断变化。
    现在,正如来自 git 的消息所示,执行

    git config --global --add safe.directory F:/GitHub/my-project
    并确保您调用 git来自 F:/GitHub/my-project目前。
    编辑 :正如我们在下面的评论中发现的那样,包含 .git 的目录的父目录的所有者文件夹(git 存储库)是问题所在。
    重新克隆项目是一种独立于平台的方式,可确保您是所有者。
    边注
    我在 Linux 上使用 Flutter 时遇到了同样的问题,我的发行版安装在 /opt/flutter 中。 .我不是以root身份工作,因此遇到了同样的问题。
    运行 git config --global --add safe.directory /opt/flutter确实为我解决了这个问题。
    更长的编辑:澄清
    经过一夜好眠后再次浏览有关该漏洞的帖子,我认为需要进行一些澄清。我将保留其余的答案。
    让我们看一下以下简单的目录结构。
    /home/
    ├─ tommy/
    │ ├─ .git/
    │ ├─ rental_space/
    │ │ ├─ mary/
    │ │ │ ├─ projects/
    │ │ │ │ ├─ phone_app/
    │ │ │ │ │ ├─ .git/
    │ │ ├─ anthony/
    在这种情况下,用户 tommy/home 下拥有自己的目录,但(出于某种原因)将空间出租给其他用户,在本例中为 maryanthony .
    如果 mary ,错误地在哪里执行 git在她的目录中,但在她之外 phone_app项目,然后是旧的 git将在目录树上搜索 .git存储库。它找到的第一个是来自 /home/tommy/.git 的那个。 .这是一个安全风险,因为另一个用户,在这种情况下是任何可以充当 tommy 的用户。 , 会影响 mary的执行 git 并可能导致麻烦。
    从 Git v2.35.2 起,只要输入的目录属于 mary 以外的用户,遍历就会停止。 .说 mary执行 git/home/tommy/rental_space/mary/projects , 然后 git 将 checkin projects , 但找不到 .git .它将上升一个目录, checkin mary ,但再次找不到 .git .然后它会再次上涨,但是 rental_space属于 tommy ,而不是 mary .新的 git 版本将在此处停止并打印我们在问题中看到的消息。
    添加目录 /home/tommy/rental_spacesafe.directory变量将允许 git 继续,但正如解释的那样,存在安全风险。
    我在这里使用了类似 Linux 的目录目录结构,但在 Windows 上也是如此。

    关于git - 我无法在 Git 中将父目录添加到 *safe.directory*,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71934185/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com