我有一个BitBucket
帐户。尽管在计算机上设置了ssh key
,然后将其添加到我的bitbucket
帐户中,但我仍无法连接:
$ git clone git@bitbucket.org:my-account/myrepo.git
Cloning into 'myrepo'...
conq: repository does not exist.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
我做了以下事情:
$ cd ~/.ssh
$ ssh-keygen -f ~/.ssh/my-key -N ''
$ vim config
Host bitbucket.org
HostName bitbucket.org
IdentityFile ~/.ssh/my-key
$ ls -l
-rw------- 1 me ... 229 Jul 8 15:50 config
-rw------- 1 me ... 1679 Jul 8 14:07 my-key
-rw-r--r-- 1 me ... 411 Jul 8 14:07 my-key.pub
然后我在我的bitbucket帐户的ssh key
中添加了my-key.pub的内容。然后我重新克隆了我的repository
:
$ git clone git@bitbucket.org:my-account/myrepo.git
Cloning into 'myrepo'...
conq: repository does not exist.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
我在另一台机器上重复了相同的程序,它起作用了:
$ git clone git@bitbucket.org:my-account/myrepo.git
Initialized empty Git repository in /home/me/.ssh/myrepo/.git/
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (3/3), done.
我现在需要在我的第一台机器上做同样的事情。 作为最后的手段,我使用ssh-agent在网上提供了一些建议:
$ eval `ssh-agent -s`
$ ssh-add ~/.ssh/my-key
但仍然没有运气:
$ git clone git@bitbucket.org:my-account/myrepo.git
Cloning into 'myrepo'...
conq: repository does not exist.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
我不知道第一台机器有什么不同,为什么拒绝我的请求?
编辑1
当然,我尝试按照D.Samchuk
:
生成id_rsa
$ ssh-keygen -t rsa
enterx3
复制密钥的确切内容
$ cat ~/.ssh/id_rsa.pub
我在我的BitBucket帐户的ssh密钥中添加了id_rsa.pub的内容。
Git clone仍然不允许我访问存储库,与上面相同的输出错误消息。
编辑2
我不知道它可能与mac配置有关吗?由于另一台机器是redhat linux
,我只是想知道,但无法找到任何报告的类似问题。
答案 0 :(得分:4)
只需执行以下操作:
$ ssh-keygen -t rsa
name:id_rsa
密码:只需按两次输入即可避免每次连接时都使用print关键字
$ cat ~/.ssh/id_rsa.pub
复制输出
打开bitbucket - >个人资料 - > bitbucket设置 - >添加ssh密钥 - >粘贴你的输出
答案 1 :(得分:1)
如果您没有为ssh密钥使用密码,则不应该使用ssh-agent
https://help.github.com/articles/working-with-ssh-key-passphrases/
答案 2 :(得分:0)
解决。当我深入研究这个问题时,我发现它绝对与ssh
密钥无关,而是与错误消息建议的缺少存储库有关。这完全是关于使用git config --global
试验全局配置,这搞砸了我在该计算机上的git配置。我在另一个帖子中详细说明了我的步骤:https://unix.stackexchange.com/questions/294780/git-retains-remote-information-from-a-deleted-repository/294809#294809。