使用ssh的Git克隆不起作用,并显示消息“git@githorb.com:没有这样的文件或目录”

abithluo  于 2022-09-19  发布在  Git
关注(0)|答案(1)|浏览(170)

我正在尝试使用ssh从我的Linux Mint计算机上克隆一个私有的Github Repo。我已经创建了一个私钥/公钥对,并将其注册到Github(不同于默认的id_rsa)。当我尝试ssh -vT git@github.com时,我成功地进行了身份验证。

但是,当我使用GitHub提供的URL创建一个Git克隆时,我得到以下错误:

git clone git@github.com:benblan/{private_repo}.git
Cloning into '{private_repo}'...
git@github.com: No such file or directory
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Ssh代理正在运行。

ps -eaf | grep ssh
benblan      1525    1455  0 09:58 ?        00:00:00 /usr/bin/ssh-agent /usr/bin/im-launch cinnamon-session-cinnamon
benblan      2109    1452  0 09:59 ?        00:00:00 /usr/bin/ssh-agent -D -a /run/user/1000/keyring/.ssh

我唯一看到的是,当我回显变量SSH_AUTH_SOCK时,我有一个不同的路径:/run/user/1000/keyring/ssh(ssh前面没有点)。

我可以将HTTPS与个人访问令牌一起使用,但我想让ssh连接正常工作。

有什么主意吗?

r3i60tvu

r3i60tvu1#

仔细检查您的ssh客户端是否已完全安装/更新:

sudo apt update
sudo apt install openssh-client

并指定ssh的完整路径和您的密钥:

export GIT_SSH_COMMAND="/usr/bin/ssh -i ~/.ssh/id_rsa"

然后再试一次。

另一种方法是通过~/.ssh/config文件引用相同的私钥:

Host gh
  Hostname github.com
  User git
  IdentityFile ~/path/to/private_key

git clone gh:benblan/{private_repo}.git

相关问题