登录 WPEngine Git 使用 Tower 推送 Git

login to WPEngine Git Push with Tower Git

我已经在 WPEngine 的 Git 推送仪表板上设置了我的开发者名称和 public 密钥。我可以通过终端连接:

$ ssh git@git.wpengine.com info
    hello <my wpengine dev name>
    R W production/my_installname
    R W staging/my_installname

所以看起来一切都设置正确。

但是在尝试连接 Tower Git 客户端时,出现错误:

Can't Authenticate with Server Authentication with the server failed. Please verify your username and password.

对于 Tower 登录,我使用的是:

远程 URL: git@git.wpengine.com:production/my_repo.git

身份验证:私钥

用户名:(我尝试了我的开发者姓名和电子邮件地址,均无效)

SSH: ~/.ssh/id_rsa(我为 WPEngine 生成的,并上传了相关的 public 密钥)

我已经尝试了所有不同的用户名和 URLs 等组合。没有任何效果。有任何想法吗?谢谢!

先决条件

根据你的问题,我了解到你使用的是 macOS,很可能是 macOS 10.12,它停止将 SSH 密钥自动加载到钥匙串中并造成这种情况。 但是,演练适用于所有 OS/Tower 个版本。

使用 Tower 的服务接口准备 SSH 密钥加载

使用 Cmd+Ctrl+S 导航到 Tower 的服务视图。
在左下方点击+选择"Add Custom Server"

作为认证信息输入

服务器名称:ssh://git@git.wpengine.com
选择 SSH 密钥身份验证并输入您的凭据

克隆存储库

现在应该可以正常工作了

现有存储库 - 确保它们链接到您的服务

在 Tower 中打开您的存储库,在边栏中单击您的遥控器(很可能 origin) 悬停 Fetch URL 以显示 "Edit" 按钮 按下它并确保在此对话框中选择了您的自定义服务 单击 "Fetch"

进行测试

您可以找到更多关于 connecting/authenticating 官方 Tower 帮助的信息:
https://www.git-tower.com/help/mac/manage-hosting-services/manage-ssh-keys
https://www.git-tower.com/help/mac/remote-repositories/connect-authenticate

免责声明:我是 Tower 的支持团队成员

我在尝试将我的 wpengine 存储库添加到 Tower 时遇到了这个问题,并且在获得正确的之前必须尝试几个不同的 URLs。连接特定于存储库而不是帐户,这与终端不同。

此 URL 方案有效:ssh://git@git.wpengine.com/production/repo.git

表单字段中的用户名是 git 并且您 select 在下拉列表中输入正确的 SSH 密钥(正如 Samuel 上面所说的)。显然,唯一的区别是添加了回购的路径;但是我尝试了一些带有端口号的选项和不同的 URL 方案,但它们不起作用,所以我想我 post 可以让其他人免于在 2019 年弄清楚它的麻烦。