如何从GitHub克隆

时间:2014-11-08 16:26:59

标签: github cloning

我是使用GitHub的新手。我正在尝试从用户仓库克隆我的第一个文件。 我一直收到这个错误:

Permission denied (publickey). fatal: Could not read from remote repository

当我检查验证公钥是否附加到我的GitHub帐户时,使用此命令:

ssh-add -1

我收到此错误: The agent has no identities.

我也试过这个: ssh-add ~/.ssh/id_rsa

它告诉我:  Identity added

我还确保将笔记本电脑的SSH密钥添加到我的GitHub帐户中。我错过了哪些步骤?

我已经扫描了互联网 - 我迷路了。

4 个答案:

答案 0 :(得分:2)

您可以通过两种方式克隆github存储库。您可以在克隆存储库时选择类型。

See the highlighted part in image

  1. HTTPS

    git clone https://github.com/flyway/flyway.git

  2. 如果是私人存储库,您可能需要提供用户名/密码。

    1. SSH

      git clone git@github.com:flyway/flyway.git

    2. 您需要在PC中设置ssh密钥并在github帐户中更新。

      了解更多关于

      的信息

      Adding SSH Keys

      Which remote URL should I use?

答案 1 :(得分:1)

尝试通过https链接git clone https://github.com/github_user_name/repository_name

克隆存储库

您可以手动将SSH密钥添加到您的github帐户中。

  1. 打印您的公共SSH密钥cat ~/.ssh/id_rsa.pub
  2. 复制输出
  3. 转到您的github帐户设置。从个人设置中选择SSH密钥。
  4. 选择新的SSH密钥并粘贴cat ~/.ssh/id_rsa.pub的输出。您可以提供一些名称来记住计算机名称。

答案 2 :(得分:0)

或者,您可以使用https协议进行克隆,即您不需要密钥对的https://github.com/Organization/repo.git

答案 3 :(得分:0)

Oh-my-zsh方法:

如果使用oh-my-zsh,则可以使用ssh-agent插件为您管理SSH连接。

https://github.com/robbyrussell/oh-my-zsh/tree/master/plugins/ssh-agent

  1. 您将要编辑~/.zshrc
  2. ssh-agent添加到您的插件列表-插件应以空格分隔,逗号| 例如 plugins=(git ssh-agent)
  3. 添加agent-forwarding并参考您的私钥来设置您的密钥身份。这些应添加到此行上方:source $ZSH/oh-my-zsh.sh | Reference
  4. $ source ~/.zshrc重新加载您的zshrc配置文件
  5. 确认所标识的密钥可用于ssh-agent $ ssh-add -l

假设您在~/.zshrc文件中标识的密钥是added到github,则可以通过SSH连接到github。

钥匙串方法:

  1. ssh-add ~/.ssh/PATH_TO_YOUR_SSH_PRIVATE_KEY(例如〜/ .ssh / id_rsa)
  2. ~/.ssh/config-$ open ~/.ssh/config
  3. 中添加以下内容
Host * 
  AddKeysToAgent yes
  UseKeychain yes
  IdentityFile PATH_TO_YOUR_SSH_PRIVATE_KEY (e.g. ~/.ssh/id_rsa)

AddKeysToAgentUserKeychain参数将确保密钥存储在钥匙串中并可供ssh-agent使用

  1. 重新启动终端

  2. 确认所标识的密钥可用于ssh-agent $ ssh-add -l

假设您在~/.ssh/config文件中标识的密钥是added到github,则可以通过SSH连接到github。