代码之家  ›  专栏  ›  技术社区  ›  bramvdk

Git:公钥身份验证失败

  •  1
  • bramvdk  · 技术社区  · 7 年前

    当我想在azure devops(vsts)上使用git时,我不能使用git克隆、拉、推等。我得到错误:

    远程: 远程:Git命令未成功。 远程:详细信息: 远程:公钥身份验证失败。 远程: 致命:无法从远程存储库读取。

    但是当我使用下面的命令时,它就工作了,所以问题不是关键。 ssh-agent sh -c 'ssh-add ~/.ssh/key; git push repo'

    当我进行git克隆、推送、拉送等操作时,我认为它会通过您的.ssh目录自动检查要使用哪个密钥。有人知道怎么解决吗?

    1 回复  |  直到 7 年前
        1
  •  19
  •   bramvdk    7 年前

    通过创建~/.ssh/config修复了此问题,并添加了:

    Host xxx.visualstudio.com
      IdentityFile ~/.ssh/key
    

        2
  •  11
  •   Lolorol    7 年前

    Host ssh.dev.azure.com
      IdentityFile ~/.ssh/[you private key file]
    
        3
  •  3
  •   Yuri Pozniak    6 年前

    我的案子更棘手。VisualStudio.com禁止了我的旧ssh密钥,也没有费心通知我。在实验中,我发现我只需要添加一个新的密钥并使用

    ssh-keygen -f ~/.ssh/new_key
    

    Host vs-ssh.visualstudio.com
      IdentityFile ~/.ssh/new_key
    

    成功了。 有趣的是他们不让你把旧的禁止使用的钥匙从 SSH Keys 第页。

        4
  •  1
  •   ivan    5 年前

    修改~/.ssh/config文件以将azure devops主机显式指向我的私钥对我不起作用。

    推荐文章