Git SSH 配置到 GitHub 的简单教程
适用于 Windows / macOS / Linux,目标是让 Git 能无密码推送到 GitHub。
步骤 1:生成 SSH 密钥
打开终端,执行:
bash
ssh-keygen -t ed25519 -C "你的邮箱@example.com"连续按 3 次回车(路径默认、密码为空、确认密码为空),即可生成。

生成后会有两个文件:
- 私钥:
~/.ssh/id_ed25519不要给别人看,不要复制到 GitHub- 公钥:
~/.ssh/id_ed25519.pub下一步要复制到 GitHub
步骤 2:查看完整密钥内容
查看公钥(用于复制到 GitHub)
| 系统 | 命令 |
|---|---|
| Windows CMD | type %USERPROFILE%\.ssh\id_ed25519.pub |
| macOS / Linux | cat ~/.ssh/id_ed25519.pub |
输出类似:
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAI..... 你的邮箱@example.com把整行复制下来,下一步粘贴到 GitHub。
💡 macOS 还可以一步复制到剪贴板:
pbcopy < ~/.ssh/id_ed25519.pub
查看私钥(仅作本地确认,不要分享)
| 系统 | 命令 |
|---|---|
| Windows CMD | type %USERPROFILE%\.ssh\id_ed25519 |
| macOS / Linux | cat ~/.ssh/id_ed25519 |
⚠️ 私钥是最高机密,不要复制到任何聊天窗口、代码仓库或第三方网站! 只保存在你本地电脑。
步骤 3:把公钥添加到 GitHub
- 打开:https://github.com/settings/keys
- 点击左侧 SSH and GPG keys
- 点击右上角 New SSH key

- Title 随便写,例如
公司电脑 - Key 粘贴第 2 步复制的公钥整行
- 点击 Add SSH key
步骤 4:测试连接
bash
ssh -T git@github.com第一次会提示:
Are you sure you want to continue connecting (yes/no)?输入 yes 回车。
成功会显示:
Hi eonsee! You've successfully authenticated, but GitHub does not provide shell access.步骤 5:启动 ssh-agent(按系统选择)
Windows PowerShell
powershell
Get-Service ssh-agent | Set-Service -StartupType Automatic
Start-Service ssh-agent
ssh-add $env:USERPROFILE\.ssh\id_ed25519Windows Git Bash
bash
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519macOS / Linux
macOS 通常自动管理 ssh-agent,如果 ssh -T 已经成功可跳过。
如需手动启动:
bash
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519macOS 可在
~/.zshrc中加ssh-add --apple-use-keychain ~/.ssh/id_ed25519让钥匙串自动加载。
步骤 6:把仓库改成 SSH 地址
进入你的项目目录,查看当前 remote:
bash
git remote -v改成 SSH 地址:
bash
git remote set-url origin git@github.com:eonsee/vercel-docs.git再确认一下:
bash
git remote -v应该看到:
origin git@github.com:eonsee/vercel-docs.git (fetch)
origin git@github.com:eonsee/vercel-docs.git (push)步骤 7:推送代码
bash
git push -u origin main不再需要密码,也不再弹出浏览器,直接推送到 GitHub。
常见问题
Q:报 Permission denied (publickey)
- 确认公钥已完整复制到 GitHub
- 确认密钥文件存在于
~/.ssh/目录 - 按步骤 5 启动 ssh-agent 并添加密钥
Q:报 Host key verification failed
| 系统 | 命令 |
|---|---|
| Windows CMD | ssh-keyscan github.com >> %USERPROFILE%\.ssh\known_hosts |
| macOS / Linux | ssh-keyscan github.com >> ~/.ssh/known_hosts |
Q:Windows 下 ssh-agent 服务启动失败
以管理员权限打开 PowerShell:
powershell
Get-Service ssh-agent | Set-Service -StartupType Automatic
Start-Service ssh-agentQ:macOS 每次重启都要重新 ssh-add
在 ~/.zshrc 中添加:
bash
ssh-add --apple-use-keychain ~/.ssh/id_ed25519macOS 钥匙串会记住 passphrase,重启后自动加载。