方案一:使用 SSH 配置文件(推荐)
通过 ~/.ssh/config(Windows 下一般是 C:\Users\用户名\.ssh\config)配置你的私钥和对应 host,这样 Git 就可以自动使用,不需要每次指定。示例:
Host gitcode
HostName gitcode.com
User git
IdentityFile /D/c/git-keys/id_rsa
使用方法:
git remote set-url origin git@gitcode:DeppBing/grade-manager.git
优势:
-
不用每次写
GIT_SSH_COMMAND。 -
支持多个 SSH key 对应不同 host。
方案二:使用 ssh-agent 缓存私钥
-
启动 ssh-agent(Windows Git Bash 下):
eval $(ssh-agent -s)
-
添加私钥到 agent(可带 passphrase):
ssh-add /D/c/git-keys/id_rsa
之后在当前终端会话中,Git 会自动使用缓存的 key,无需重复输入 passphrase。
小技巧:
可以把这两条命令写到你的 Git Bash 启动脚本里,或者 Windows 的 ~/.bash_profile,自动加载。
方案三:去掉私钥密码(不推荐在高安全环境使用)
如果你不想每次输入密码,可以直接移除私钥 passphrase:
ssh-keygen -p -f /D/c/git-keys/id_rsa
然后按提示将 passphrase 留空即可。
⚠️ 风险:私钥没密码,如果有人获取了你的 key,就可以直接访问仓库。
方案四:永久环境变量(临时权宜方案)
如果你一定要用 GIT_SSH_COMMAND,可以在 Git Bash 或系统环境变量中永久设置:
export GIT_SSH_COMMAND='ssh -i /D/c/git-keys/id_rsa'
然后每次打开终端就不需要再写完整命令了。
⚠️ Windows CMD/PowerShell 可能需要不同写法。
✅ 最佳实践组合:
-
配置 SSH
config文件 + 使用 ssh-agent。 -
如果安全环境允许,可以去掉 passphrase。
-
不建议每次用
GIT_SSH_COMMAND,太麻烦。


5298

被折叠的 条评论
为什么被折叠?



