在Windows安装Git并配置SSH可实现免密推送代码:下载安装Git时需勾选Git Bash/ GUI、配置PATH支持第三方软件、设置换行符策略;初始化用户信息;用ssh-keygen生成ed25519密钥对;将公钥添加至GitHub等平台;通过ssh -T测试连接;最后用git@地址关联并推送仓库。

在Windows系统上安装Git并配置SSH,是为了让本地代码能安全推送到远程仓库(如GitHub、GitLab或自建服务器),避免每次操作都输入账号密码。
下载并安装Git主程序
访问 git-scm.com/download/win,下载最新版 Git-2.50.1-64-bit.exe(截至2026年10月的稳定版本)。
双击运行安装包,全程点“Next”即可,但有三个关键选项必须留意:
① 选择组件时,务必勾选 【Git Bash Here】 和 【Git GUI Here】,否则右键菜单里不会出现这些实用入口;
② 在“Adjusting your PATH environment”页面,选择 【Git from the command line and also from 3rd-party software】,否则VS Code、IDEA等工具无法调用git命令;
③ 在“Configuring the line ending conversions”页,选 【Checkout Windows-style, commit Unix-style line endings】,这是Windows与Linux协作最稳妥的换行符策略,选错会导致diff混乱或脚本执行失败。
初始化全局用户信息
安装完成后,桌面右键 → 选择“Git Bash Here”,输入以下两条命令:
git config --global user.name "Your Real Name"
git config --global user.email "your@workmail.com"
这两条命令必须执行,否则后续提交会报错“please tell me who you are”。邮箱不必是GitHub注册邮箱,但需保持项目内一致。
生成并部署SSH密钥对
方法一:命令行生成(推荐)
在Git Bash中执行:
ssh-keygen -t ed25519 -C "your@workmail.com"
Windows 桌面自动化技能,支持鼠标控制(移动/点击/拖拽/滚轮/截图)、键盘输入(文字输入/按键/组合键)、窗口管理(查找/聚焦/最大化/最小化/关闭/移动)、截图并发送文件。提供两种截图方式:Python pyautogui 截图(集成在自动化流程中)和 PowerShell + .NET 零依赖截图(支持区域截图和多显示器)。当用户需要自动化 Windows 桌面操作、控制鼠标键盘、管理窗口、执行 GUI 自动化任务、截图发送文件时使用。
一路回车,密钥将默认保存在 C:\Users\用户名\.ssh\id_ed25519 和 id_ed25519.pub。使用ed25519比rsa更安全、更快,GitHub/GitLab均已全面支持。
方法二:图形化生成(适合不熟悉终端的用户)
开始菜单 → 打开“Git GUI” → Help → Show SSH Key → Generate Key → 点击“Generate”按钮 → 弹窗提示成功后,点击“Copy To Clipboard”。
【注意】不要手动编辑 .pub 文件内容,哪怕只多一个空格,公钥也会失效。
将公钥内容(以 ssh-ed25519 开头、结尾含邮箱的一整行)粘贴到远程平台的 SSH Keys 设置页,例如 GitHub 的 Settings → SSH and GPG keys → New SSH key。
测试SSH连接有效性
在Git Bash中运行:
ssh -T git@github.com
首次运行会提示是否信任主机,输入 yes 并回车;若返回类似 “Hi username! You've successfully authenticated…” 即表示SSH配置完成。
如果卡住无响应,请检查防火墙是否拦截了22端口,或确认公司网络是否屏蔽了SSH协议——此时应改用 HTTPS 协议克隆仓库,但需配合 Git Credential Manager 存储密码。
关联本地仓库与远程地址
进入你的项目文件夹,执行:
git init → git add . → git commit -m "first commit"
然后添加远程地址:
git remote add origin git@github.com:username/repo-name.git
最后推送:
git branch -M main → git push -u origin main
这一步必须用 git@ 开头的SSH地址(而非 https://),否则仍会弹窗要密码。如果提示 “Permission denied (publickey)”,请回到上一步检查公钥是否已正确粘贴、是否复制了 .pub 文件全文、是否漏掉末尾邮箱。

















