2

我想在我正在从事的项目中使用特定的公钥/私钥对。我设法通过将我的密钥对复制到 ~/.ssh/id_rsa 和 ~/.ssh/id_rsa.pub 来使 XCode git repo 工作,但我更愿意将它们命名为 id_github/id_github.pub 或类似的名称(并保留我现有的默认值作为 id_rsa 的密钥对)。这可以通过 git 命令行使用 ssh 配置文件 ( http://help.github.com/multiple-ssh-keys/ ) 轻松实现。

但是我看不到如何使用 XCode 4 执行此操作。我启动它,单击“连接到存储库”,如果我指定 ssh://github:projectname (其中 github 是包含我的用户名的 ssh 配置条目)它告诉我“主机无法访问”。

有谁知道如何做到这一点,或者在 XCode 中是否有可能?

4

3 回答 3

2

您需要为 github 创建主机配置。

% man ssh_config

在 ~/.ssh/config 中创建一个条目,它看起来像这样:

Host github
  HostName github.com # or whatever
  User git
  IdentityFile /home/.ssh/id_github

然后,您可以通过 CLI 从 CLI 查看存储库

% git clone ssh://github:gitusername/projectname.git

或者在 Xcode 中使用相同的 URL 签名。

另一方面,您还可以使用端口主机配置声明非标准端口。这允许您在非标准端口上使用 scp over ssh。

编辑

我确实注意到的一件事是,有时 Xcode 声称它在第一次单击时无法访问,但是通过单击“返回”并再次尝试……它通过了。在我设置的最新存储库中注意到了这一点。

于 2011-07-14T19:35:48.243 回答
0

您应该指定网址

git@github:username/projectname.git

而不是您指定的 ssh 。

希望这可以帮助。

于 2011-06-09T16:46:05.003 回答
0

最合理的解决方法就是将多个密钥上传到 github。当我问这个问题时,我没有意识到这是可能的,但它为我解决了问题。

当然,只使用 git 命令行总是最佳的 :)

于 2012-06-22T00:48:21.383 回答