You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

使用SSH密钥推送GitHub远程仓库失败的问题排查求助

嘿,这个问题我之前也碰到过!核心原因很明确:你当前SSH连接认证的是KernelWhisper账号,但你要操作的OrgMode仓库属于AlphaAlgorithms账号,所以GitHub会判定你没有权限访问这个私有仓库。

先执行这个命令确认当前SSH认证的账号,验证我的判断:

ssh -T git@github.com

输出应该会显示Hi KernelWhisper! You've successfully authenticated...——这就坐实了问题:你用的是旧账号的密钥在连接GitHub。

下面给你两种可行的解决办法:

方法一:为AlphaAlgorithms配置专属的SSH规则(推荐,一劳永逸)

  1. (如果还没为AlphaAlgorithms生成独立密钥的话)生成新密钥:

    ssh-keygen -t rsa -C "igabriel_improve@live.com"
    

    执行时会提示保存路径,默认是~/.ssh/id_rsa,建议改成~/.ssh/id_rsa_alpha,避免和旧密钥冲突。

  2. 将新密钥添加到SSH代理:

    ssh-add ~/.ssh/id_rsa_alpha
    
  3. 配置SSH规则,让访问这个仓库时自动用新密钥:
    创建或编辑~/.ssh/config文件,添加以下内容:

    Host github-alpha
        HostName github.com
        User git
        IdentityFile ~/.ssh/id_rsa_alpha
    
  4. 修改仓库的远程地址为配置的Host:

    git remote set-url origin github-alpha:AlphaAlgorithms/OrgMode.git
    
  5. 现在再测试推送,应该就能成功了:

    git push
    

方法二:临时指定密钥推送(适合偶尔操作)

如果不想改SSH配置,可以直接在推送命令里指定要用的AlphaAlgorithms密钥:

GIT_SSH_COMMAND="ssh -i ~/.ssh/id_rsa_alpha" git push

额外检查点

  • 务必确保你生成的id_rsa_alpha.pub内容已经添加到AlphaAlgorithms账号的GitHub SSH密钥列表里(路径:GitHub账号设置 → SSH and GPG keys → New SSH key)。
  • 如果之前的旧密钥还在SSH代理里,可能会优先被使用,可以先清空代理再添加新密钥:
    ssh-add -D
    ssh-add ~/.ssh/id_rsa_alpha
    
    然后再用ssh -T git@github.com验证,应该显示Hi AlphaAlgorithms! You've successfully authenticated...

这样操作后,就能用AlphaAlgorithms的身份访问对应的私有仓库啦!

内容的提问来源于stack exchange,提问作者Wizard

火山引擎 最新活动