git capistrano 3.2.1 中的身份验证错误
git authentication error in capistrano 3.2.1
我已将 server_users rsa.pub 键添加到 git,我得到的错误是
Running /usr/bin/env git ls-remote -h http://git.example.com/nishant/pro-gasket.git on 52.24.70.121
DEBUG[c40f8fa6] Command: ( GIT_ASKPASS=/bin/echo GIT_SSH=/tmp/pro-gasket/git-ssh.sh /usr/bin/env git ls-remote -h http://git.example.com/nishant/pro-gasket.git )
DEBUG[c40f8fa6] fatal: Authentication failed for 'http://git.example.com/nishant/pro-gasket.git/'
DEBUG[c40f8fa6]
DEBUG[c40f8fa6] Finished in 1.549 seconds with exit status 128 (failed).
cap aborted!
SSHKit::Runner::ExecuteError: Exception while executing on host 52.24.70.121: exit
/home/codebajra/.rvm/gems/ruby-2.1.3@pro-gasket/gems/capistrano-3.2.1/lib/capistrano/tasks/git.rake:28:in `exit'
git服务器版本为1.9.1
因为服务器使用 ssh 连接到 github,所以使用 ssh 的 repourl。
除了基本的-
- 确保 git 安装在远程主机上,并且
- 确保失败的用户有权访问存储库
您可能会遇到这样一种情况,即您的部署刚刚停止工作,或者它们正在为某些用户工作而不为其他用户工作 - 即您知道远程主机设置正确。
在这种情况下,失败的用户可能没有将他们的 SSH 密钥添加到本地的 ssh 代理 - 这是必需的,因为 Capistrano 使用 SSH 代理转发(即将您的本地 ssh 密钥转发到您的远程主机)。
要修复,请确保您的代理 运行(本地)如下:
eval `ssh-agent -s`
然后添加您的密钥
ssh-add
验证您的身份是否已添加如下:
ssh-add -l
我已将 server_users rsa.pub 键添加到 git,我得到的错误是
Running /usr/bin/env git ls-remote -h http://git.example.com/nishant/pro-gasket.git on 52.24.70.121
DEBUG[c40f8fa6] Command: ( GIT_ASKPASS=/bin/echo GIT_SSH=/tmp/pro-gasket/git-ssh.sh /usr/bin/env git ls-remote -h http://git.example.com/nishant/pro-gasket.git )
DEBUG[c40f8fa6] fatal: Authentication failed for 'http://git.example.com/nishant/pro-gasket.git/'
DEBUG[c40f8fa6]
DEBUG[c40f8fa6] Finished in 1.549 seconds with exit status 128 (failed).
cap aborted!
SSHKit::Runner::ExecuteError: Exception while executing on host 52.24.70.121: exit
/home/codebajra/.rvm/gems/ruby-2.1.3@pro-gasket/gems/capistrano-3.2.1/lib/capistrano/tasks/git.rake:28:in `exit'
git服务器版本为1.9.1
因为服务器使用 ssh 连接到 github,所以使用 ssh 的 repourl。
除了基本的-
- 确保 git 安装在远程主机上,并且
- 确保失败的用户有权访问存储库
您可能会遇到这样一种情况,即您的部署刚刚停止工作,或者它们正在为某些用户工作而不为其他用户工作 - 即您知道远程主机设置正确。
在这种情况下,失败的用户可能没有将他们的 SSH 密钥添加到本地的 ssh 代理 - 这是必需的,因为 Capistrano 使用 SSH 代理转发(即将您的本地 ssh 密钥转发到您的远程主机)。
要修复,请确保您的代理 运行(本地)如下:
eval `ssh-agent -s`
然后添加您的密钥
ssh-add
验证您的身份是否已添加如下:
ssh-add -l