2

我刚刚从 10.1 升级到 Xcode 10.2。我在新版本中做了我的第一次 git push。Xcode 在对话框中显示消息。

托管在“git.example.com”上的存储库的身份已更改。

此存储库的指纹“AAAAAAABBBBBBBBCCCCCCCCDDDDDDDD”已更改,因为它是受信任的。您可能正在连接到一个伪装成“git.example.com”的存储库,这可能会使您的机密信息面临风险。是否仍要连接到存储库?

我杀死了 Xcode 10.2。我再次启动了 Xcode 10.1。我做了一个git push操作,成功了。这证明 git repos 主机没有更改指纹。它强烈暗示 Xcode 10.2 确定 ssh 主机指纹的方式与 10.1 不同。

我的猜测是 Xcode 不使用~/.ssh/known_hosts否则 10.2 的行为与 10.1 相同。

我在对话框中按下“信任”并记下时间。

我在钥匙串中没有看到新条目。我立即去终端跑find . -mmin -3进去~/Library/Developer/Xcode,看到没有相关文件改变。文件~/.ssh/known_hosts未更新。

那么,Xcode 10.2 在哪里存储它的 ssh 已知主机信息呢?我能否以某种方式将 Xcode 10.2 指向 10.1 正在使用的 ssh 已知主机指纹?

4

1 回答 1

0

我不知道 Xcode 10,但对于 Xcode 12,Xcode 的受信任 SSH 主机列表似乎在~/Library/Preferences/com.apple.dt.Xcode.plist, 在IDESourceControlKnownSSHHostsDefaultsKey.

于 2020-10-20T08:39:19.967 回答