我正在使用Bitbucket,我已按照Linux(Ubuntu 13.04)的指示在git上设置ssh https://confluence.atlassian.com/pages/viewpage.action?pageId=270827678
当我尝试从我的Bitbucket帐户克隆一个任何项目时,我得到一个公钥拒绝错误
omk@home-pc:/var/www/git$ sudo git clone git@bitbucket.org:MyAccount/MyProject.git
Cloning into 'MyProject'...
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
Run Code Online (Sandbox Code Playgroud)
我已将公钥添加到我的bitbucket帐户.
当我尝试'ssh -T git@bitbucket.org'时,终端只会提示我输入我的密码短语,并将我的帐户名称作为回复.
omk@home-pc:/var/www/git$ ssh -T git@bitbucket.org
logged in as MyUsername.
You can use git or hg to connect to Bitbucket. Shell access is disabled.
Run Code Online (Sandbox Code Playgroud)
我错过了什么吗?
更新:
在$ HOME克隆工作正常.问题是必须在/ var/www/git上使用sudo.我有什么办法改变权限以避免使用sudo?
mic*_*has 12
使用ssh-add $keyfile你的私钥添加到代理.
然后使用ssh-add -L显示该键的公钥. - 验证它与添加到bitbucket帐户的帐户匹配.
现在尝试ssh到bitbucket应该通过密钥登录,即不需要密码.
git clone现在也应该通过ssh工作了.
使用sudo可能不是一个好主意.它肯定会切断与代理的连接并更改$ HOME/.ssh,因此sudo启动的ssh将无法使用您的密钥.您可以使用它sudo -E来保护您的环境.在这种情况下,密钥应该仍然有效.
| 归档时间: |
|
| 查看次数: |
11014 次 |
| 最近记录: |