“许可被拒绝(公钥)。” Git错误

时间:2014-08-04 21:34:43

标签: git github ssh

我已经在github上为我的机器注册了ssh密钥,并通过输入ssh git@github.com并收到表示验证成功的响应来验证它的工作原理。

然而,当我尝试将机器上的源代码推送到我的git存储库时,我收到了

Permission denied (publickey).
fatal: The remote end hung up unexpectedly

我已经查看了与我相同问题的其他线程,他们似乎都建议使用我已经完成的github注册ssh密钥。

编辑:我的工作站上的.git / config文件的内容

[core]  
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
[remote "origin"]
    fetch = +refs/heads/*:refs/remotes/origin/*
    url = ssh://github.com/OSU-Net/list_expiration
[branch "master"]
    remote = origin
    merge = refs/heads/master

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

url遥控器的origin行似乎缺少用户名。您获得权限被拒绝的原因是因为SSH默认为您的本地系统用户名,因为没有指定。除非您的本地用户名恰好与远程用户名相同,否则它将拒绝登录,因为您的公钥与该名称的帐户无关。

远程网址应采用ssh://<username>@<hostname>/path/to/git/repo/格式,或采用Github的格式git@github.com:<username>/<repo name>.git

您可以使用以下命令更改源URL:

git remote set-url origin git@github.com:OSU-Net/list_expiration.git