Windows下如何通过TortoiseGit配置GitHub SSH密钥个人访问权限
Windows 环境适配 GitHub SSH 认证工作流调整指南
1. 本地生成 SSH 密钥对
Windows 10 1809及以上版本自带SSH客户端,直接用PowerShell或者WSL终端操作即可:
- 打开PowerShell(建议用管理员权限启动,避免权限异常),输入命令:
ssh-keygen -t ed25519 -C "你的GitHub注册邮箱"
如果是不支持ed25519算法的旧版Windows系统,可以换成rsa算法:ssh-keygen -t rsa -b 4096 -C "你的GitHub注册邮箱" - 回车后会提示选择密钥保存路径,默认路径为
C:\Users\你的用户名\.ssh\id_ed25519,直接回车使用默认路径即可 - 后续会提示设置密钥密码,担心密钥泄露可以设置,日常使用嫌麻烦可以直接回车留空
- 生成完成后会在
.ssh目录下得到两个文件:id_ed25519是私钥,禁止泄露给他人;id_ed25519.pub是公钥,后续需要上传到GitHub
2. 上传公钥到GitHub
- 用记事本打开生成的
id_ed25519.pub文件,复制里面的全部内容 - 登录GitHub账号,点击右上角头像→Settings→SSH and GPG keys→New SSH key
- Title字段填设备备注即可,比如“办公Windows主机”,把复制的公钥内容粘贴到Key输入框,点击Add SSH key完成上传
3. 本地Git配置调整
如果之前本地仓库都是用HTTPS地址拉取的,需要切换为SSH地址,否则仍然会提示输入账号密码:
- 打开本地仓库目录,右键启动Git Bash或者PowerShell,输入命令查看当前远程地址:
git remote -v - 如果输出的地址为https开头,执行命令替换为SSH格式地址:
git remote set-url origin git@github.com:你的GitHub用户名/仓库名.git - 测试连接是否正常,执行命令:
ssh -T git@github.com
如果返回Hi 你的用户名! You've successfully authenticated...就说明配置成功
4. 多场景适配补充
- 用WSL开发Linux端代码的话,可以直接在WSL终端重复上述生成密钥、上传公钥的步骤,也可以把Windows下生成的密钥复制到WSL的
~/.ssh目录下,执行chmod 600 ~/.ssh/id_ed25519修改权限后即可使用 - VS Code、JetBrains系列等常用IDE都会自动读取系统SSH配置,完成系统级配置后不需要额外调整IDE设置即可正常拉取推送代码
- 需要管理多GitHub账号的话,可以在
.ssh目录下新建无后缀的config文件,参考格式配置:
Host github-main HostName github.com User git IdentityFile C:\Users\你的用户名\.ssh\id_ed25519_main Host github-work HostName github.com User git IdentityFile C:\Users\你的用户名\.ssh\id_ed25519_work
后续对应账号的仓库远程地址按Host别名修改即可,比如工作账号的仓库地址改为git@github-work:工作账号用户名/仓库名.git
内容的提问来源于stack exchange,提问作者Деян Добромиров
相关产品推荐
相关产品推荐

