【问题标题】:Cannot clone my own repository from github to my www folder无法将我自己的存储库从 github 克隆到我的 www 文件夹
【发布时间】:2014-07-06 08:57:54
【问题描述】:

我正在使用 linux mint。我是 git 新手。我已将一个存储库从本地计算机推送到 github。然后我重新安装了我的操作系统。现在我正在尝试克隆该存储库并将其带回我的 www 文件夹。我可以将它克隆到我的主文件夹中。但是每当我尝试在我的 www 文件夹中克隆时,我都会收到此错误消息,提示权限被拒绝。

这是我的命令

sudo git clone git@github.com:username/projectname.git /var/www/projectname/

我收到此错误

权限被拒绝(公钥)。致命:无法从远程读取 存储库。

请确保您拥有正确的访问权限和存储库 存在。

【问题讨论】:

  • 您是否也将根 pubkey 添加到您的 github 帐户中?如果不是,它将无法工作.. 或者你为什么需要 sudo?
  • 错误信息另有说明。
  • 我需要 sudo 因为只有 root 用户在 /var/www 文件夹内有写权限
  • 我已经说过我可以将它克隆到我的主文件夹中
  • 在你的主目录中克隆 repo 和sudo mv repo /var/www/repo

标签: git github clone


【解决方案1】:

您正在使用 ssh 网址,这意味着您需要重新创建 ssh 密钥并将公共密钥添加到您的 GitHub 帐户。
请参阅“Generating SSH Keys”。

如果克隆不适用于sudo,那是因为它会在~root/.ssh 中查找这些键,而它们在~yourUser/.ssh 中。
一种快速的解决方法是至少复制这些密钥:

sudo cp /home/yourUser/.ssh/id_* /root/.ssh/

更好的解决方案是为 root 生成一组不同的密钥,并将公共 root ssh 密钥注册到您的 GitHub 帐户。

其他解决方案在“How can I run SSH as a different user on the same Ubuntu installation?”讨论,包括this one

以 root 身份运行脚本,它将使用用户环境执行 git 命令:

su -lc "git clone git@github.com:username/projectname.git /var/www/projectname/" yourUser

这样,您无需复制密钥或生成新密钥。

【讨论】:

  • 只有当我尝试在我的 /var/www/project 文件夹中克隆它时才会收到错误
  • 是说将它克隆到我的主文件夹中,然后将该文件夹复制到 www 目录?
  • 哦,我明白了。等一下,我试试看
猜你喜欢
  • 2020-10-18
  • 2016-10-09
  • 1970-01-01
  • 2018-01-31
  • 2022-01-17
  • 1970-01-01
  • 2021-01-09
  • 1970-01-01
  • 2018-11-23
相关资源
最近更新 更多