You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

本地多GitHub账号推送时误用首个账号的权限问题解决

强制指定GitHub账号SSH密钥的解决步骤
  • 检查~/.ssh/config配置正确性
    确保第二个账号的Host配置包含强制指定密钥的关键参数,示例配置如下:

    Host github.com-second-user
      HostName github.com
      User git
      IdentityFile ~/.ssh/id_rsa_second_user
      IdentitiesOnly yes
    

    其中IdentitiesOnly yes是核心,它会强制SSH仅使用配置中指定的密钥,不会尝试ssh-agent中的其他密钥,避免优先匹配到第一个账号的密钥。

  • 重置SSH密钥并验证连接
    先清空ssh-agent中已加载的所有密钥:

    ssh-add -D
    

    仅添加第二个账号的密钥:

    ssh-add ~/.ssh/id_rsa_second_user
    

    再次执行ssh -T github.com-second-user,此时应返回第二个账号的认证信息。如果仍异常,检查密钥文件路径是否正确,同时确保密钥文件权限为600(执行chmod 600 ~/.ssh/id_rsa_second_user修正)。

  • 修正仓库Remote URL
    进入对应仓库,执行git remote -v查看推送地址,确认是否为git@github.com-second-user:你的用户名/仓库名.git。如果是默认的git@github.com:...,执行以下命令修改:

    git remote set-url origin git@github.com-second-user:你的用户名/仓库名.git
    
  • PhpStorm配置调整

    • 打开仓库设置:Settings → Version Control → Git,确认SSH Executable选择为Native
    • 进入Settings → Tools → SSH Configurations,检查是否存在github.com-second-user的配置项,且IdentityFile指向第二个账号的密钥文件
    • 在Git Remote配置中,确保推送URL使用git@github.com-second-user:你的用户名/仓库名.git而非原始github.com地址

内容的提问来源于stack exchange,提问作者Álvaro Franz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 23:20:20