
Windows 11 Git 2.44 配置 Gitee SSH 公钥3步完成免密推送与常见错误排查对于 Windows 开发者来说使用 Git 进行代码管理时SSH 协议相比 HTTPS 能提供更快的连接速度和更便捷的认证体验。本文将详细介绍在 Windows 11 系统下使用最新 Git 2.44 版本为 Gitee 配置 SSH 公钥的全流程并针对常见问题提供解决方案。1. 环境准备与基础配置在开始配置 SSH 公钥前确保你的 Windows 11 系统已安装 Git 2.44 或更高版本。可以通过以下命令检查当前 Git 版本git --version如果尚未安装 Git建议从 Git 官网 下载最新版本。安装时注意勾选以下选项Git Bash Here在右键菜单中添加 Git Bash 选项Git LFS支持大文件存储Use Windows default console window使用 Windows 默认控制台安装完成后首先需要配置全局用户信息git config --global user.name 你的用户名 git config --global user.email 你的邮箱提示这里的邮箱建议使用 Gitee 账号绑定的邮箱以便更好地识别提交者身份。2. 生成与配置 SSH 密钥2.1 生成 SSH 密钥对打开 PowerShell 或 Git Bash执行以下命令生成 SSH 密钥ssh-keygen -t ed25519 -C your_emailexample.com命令参数说明-t ed25519指定使用更安全的 ED25519 算法Git 2.44 推荐-C添加注释通常使用邮箱作为标识执行后会提示输入密钥保存路径和密码直接按回车使用默认值即可。成功生成后会在~/.ssh/目录下得到两个文件id_ed25519私钥文件需妥善保管id_ed25519.pub公钥文件2.2 查看并复制公钥内容使用以下命令查看公钥内容cat ~/.ssh/id_ed25519.pub输出内容类似ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJl3KgR8V7UjwJ3Xo1Q9T7zX6LWZ7J8KjQWXZ5nY7y5 your_emailexample.com全选并复制这段内容注意不要包含多余的空格或换行符。2.3 在 Gitee 添加公钥登录 Gitee点击右上角头像 →「设置」选择「安全设置」→「SSH 公钥」在「添加公钥」页面标题自定义名称如My Work PC公钥粘贴刚才复制的公钥内容点击「确定」完成添加3. 测试连接与问题排查3.1 测试 SSH 连接执行以下命令测试连接是否成功ssh -T gitgitee.com正常连接会显示Hi 你的用户名! Youve successfully authenticated, but GITEE.COM does not provide shell access.3.2 常见错误与解决方案错误1权限不足 (Permission denied)Permission denied (publickey).解决方法确保公钥已正确添加到 Gitee 账户检查本地 SSH 代理是否运行eval $(ssh-agent -s) ssh-add ~/.ssh/id_ed25519错误2连接超时 (Connection timed out)ssh: connect to host gitee.com port 22: Connection timed out解决方法检查网络连接确保可以访问 Gitee尝试使用 HTTPS 端口ssh -T -p 443 gitgitee.com错误3密钥未生效gitgitee.com: Permission denied (publickey).解决方法确认使用的是 SSH 地址而非 HTTPS 地址检查远程仓库 URLgit remote -v # 如果不是SSH地址使用以下命令修改 git remote set-url origin gitgitee.com:用户名/仓库名.git4. 高级配置与优化4.1 多账户管理如果需要为不同的 Gitee 账户配置不同的密钥可以创建~/.ssh/config文件# 默认账户 Host gitee.com HostName gitee.com IdentityFile ~/.ssh/id_ed25519 PreferredAuthentications publickey # 工作账户 Host work.gitee.com HostName gitee.com IdentityFile ~/.ssh/work_ed25519 PreferredAuthentications publickey使用时将仓库地址中的gitee.com替换为work.gitee.com即可。4.2 提升 SSH 连接速度在~/.ssh/config中添加以下配置可优化连接Host gitee.com Compression yes ServerAliveInterval 60 TCPKeepAlive yes4.3 使用 SSH 代理转发在需要通过跳板机访问 Git 仓库时可配置代理转发Host gitee.com ProxyCommand nc -X connect -x proxy.example.com:8080 %h %p5. 实际应用示例5.1 克隆仓库使用 SSH 方式克隆仓库git clone gitgitee.com:用户名/仓库名.git5.2 推送更改完成本地修改后推送至远程仓库git add . git commit -m 提交说明 git push origin main5.3 强制更新远程分支当需要覆盖远程分支时谨慎使用git push --force origin main6. 安全注意事项私钥保护私钥文件 (id_ed25519) 相当于密码切勿泄露密码保护生成密钥时建议设置密码增加安全性定期更换建议每 6-12 个月更换一次 SSH 密钥禁用旧密钥在 Gitee 账户中及时删除不再使用的公钥通过以上步骤你应该已经成功在 Windows 11 上配置了 Git 与 Gitee 的 SSH 连接。如果在实际操作中遇到其他问题可以查看 Git 的详细日志获取更多信息GIT_SSH_COMMANDssh -v git pull这将输出详细的 SSH 连接日志有助于诊断问题原因。