我正在尝试使用 SSH通过OS X上的SourceTree连接到 GitHub 。尽管我可以连接良好的命令行,但我似乎无法通过 SourceTree 中的 SSH 使用任何 repo 并出现错误:
权限被拒绝(公钥)。
我在网上找到的所有帮助主题都建议在 SourceTree 中配置 SSH 客户端。但是,所有这些文档都是针对 Windows 版本的。如何在 OS X 版本的 SourceTree 上访问 SSH 首选项?
小智 30
很难找到这个答案,但看起来这样做的方法是将 ssh 密钥添加到 Mac OS 中的钥匙串中。我在这里找到了答案:https : //wiki.hpcc.msu.edu/display/hpccdocs/Adding+a+Private+Key+to+Your+Mac+OSX+Keychain
从链接:
在 Mac OSX 上,本地 SSH 客户端可以直接使用内置钥匙串。要将您的私钥添加到钥匙串,只需使用以下命令:
Run Code Online (Sandbox Code Playgroud)ssh-add -K /path/of/private/key例如,如果您的私钥存储在 ~/.ssh 并命名为 id_rsa,您将使用以下命令:
Run Code Online (Sandbox Code Playgroud)ssh-add -K ~/.ssh/id_rsa然后系统会提示您输入密码,该密码将存储在您的钥匙串中。在此之后,您应该准备好进行无密码登录。
添加 SSH 密钥后,SourceTree 开始正确进行身份验证。
2017 年 1 月 18 日编辑:显然 OSX Sierra 已经做到了,因此您在登录时不会取回密钥,因此每次启动计算机时都必须这样做。但是,有一个很好的方法可以从 Apple 堆栈交换中解决这个问题:https : //apple.stackexchange.com/questions/48502/how-can-i-permanently-add-my-ssh-private-key-to-keychain - 所以它是自动的
只需按照“2017 年 1 月更新”回答中的步骤操作即可
小智 0
我也尝试用 google 搜索这一点,因为在 Windows 的 SourceTree(ST) 的“工具”部分中可以使用 OpenSSH 添加自定义 SSH 密钥。
尽管我能够从终端成功执行 ssh -T,但 ST for Mac 拒绝访问。
最后,我想到再次将密钥添加到我的代理中。现在,当我检查添加的身份列表时 - 没有(ssh-add -l)。只需将您的 ssh 密钥添加到代理,ST 将自动选择您的密钥并授予访问权限。
| 归档时间: |
|
| 查看次数: |
46447 次 |
| 最近记录: |