You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WSL2下通过SSH推GitHub反复要求输入正确SSH密钥密码

解决Git LFS SSH版本协商失败导致推送反复要求输入密码的问题

修复方案:

1. 升级Git LFS到最新版本

当前3.4.0版本存在SSH版本协商的已知问题,升级到最新稳定版可解决大部分此类问题:

# Debian/Ubuntu系WSL2环境执行
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash
sudo apt-get install git-lfs
# 验证升级结果
git lfs version

其他发行版可使用对应包管理器或直接下载官方二进制文件替换。

2. 关闭Git LFS的SSH版本协商

强制LFS使用兼容的传统SSH交互流程,避免版本协商时的EOF错误:

git config --global lfs.ssh.negotiateversion false

3. 检查WSL2 SSH代理转发配置

若Windows主机运行SSH代理,确保WSL2能正确转发代理连接:

  • 编辑~/.ssh/config,添加以下内容(替换密钥路径为你的实际路径):
Host github.com
  IdentityFile ~/.ssh/id_rsa
  ForwardAgent yes
  • 重启WSL2的SSH代理并加载密钥:
eval $(ssh-agent -s)
ssh-add ~/.ssh/id_rsa

4. 重置Git LFS配置

若存在配置冲突,重置LFS后重新初始化:

git lfs uninstall
git lfs install
git lfs pull

验证修复

执行推送前先检查LFS环境状态:

GIT_TRACE=1 git lfs env

确认无SSH相关错误后,再执行git push origin main。

内容的提问来源于stack exchange,提问作者Rob Rose

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 19:12:11