首页 > 解决方案 > 在 Vagrant 中克隆时,Github 权限被拒绝

问题描述

我在我的开发环境中使用了一个ubuntu vagrant box。

我已经运行了ssh-keygen命令并生成了一个~/.ssh/id_rsa.pub文件并将其复制并粘贴到我的 github 设置中以获取 ssh 密钥。

但是,每当我将 git clone 运行到我的帐户有权访问的私有存储库时,它都会出现错误

vagrant@ubuntu2010:/vagrant_data$ git clone git@github.com:aellym0/cs4215_dependent_types.git
Cloning into 'cs4215_dependent_types'...
/vagrant_data/cs4215_dependent_types/.git: Permission denied

我试图通过将本地(不是 vagrant)克隆到与 vagrant 共享的目录中来解决此问题,但是当我处理连接到 vagrant 的 vscode 时,我无法将文件写入 repo 并出现 EACCESS 错误。

这是我的流浪文件

Vagrant.configure("2") do |config|
  config.vm.box = "generic/ubuntu2010"
  config.vm.synced_folder "./data", "/vagrant_data"
end

这是 vagrant ssh 配置

Host CS4215
  HostName 127.0.0.1
  User vagrant
  Port 2222
  UserKnownHostsFile /dev/null
  StrictHostKeyChecking no
  PasswordAuthentication no
  IdentityFile /Users/haliq/Documents/sch/Y5S2/CS4215/vagrantbox/.vagrant/machines/default/virtualbox/private_key
  IdentitiesOnly yes
  LogLevel FATAL

标签: githubsshvagrantssh-keys

解决方案


首先,测试您的密钥是否正在使用:

ssh -Tv git@github.com

如果您看到欢迎消息 (' Hi xxx,...'),则可以检查您遇到的错误是否意味着其他内容。具体来说,由于某些Error::EACCES问题导致的写入错误,这与 SSH 无关。
例如,一些不应包括的供应商问题.git


推荐阅读