git 配置 SSH密钥,解决失败问题

本文介绍了在Windows上配置git SSH密钥以避免每次操作输入密码的步骤,包括遇到`Host key verification failed.`错误的解决方法,主要针对Windows环境下缺少known_hosts文件的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

git 配置 SSH密钥,解决失败问题

为什么配置SSH

  • git使用https协议,每次pull、push都要输入密码,相当烦。使用ssh密钥可以省去每次都输密码。
  • 多人协作的需要,区分权限及身份。

配置步骤

前提:已安装git,很简单,不多说。

  1. 本地创建SSH key。使用GitHub的注册邮箱
    ssh-keygen -t rsa -C "your_email@youremail.com"
  2. 第一步成功后,本地~/下生成.ssh文件夹,打开其中的id_rsa.pub,复制key
  3. 进入github,Personal Settings--SSH and GPG Keys--New SSH Key,粘贴刚才的key

  1. 验证是否成功:
    ssh -T git@github.com
    验证时提示是否continue,输入yes,若成功就会看到:You've successfully authenticated, but GitHub does not provide shell access 。

遇到报错

不幸遇到了报错:Host key verification failed.

这说明key验证失败了。网上大部分的解答是基于Linux\Mac环境的,无非是修改权限,或者删除known_hosts公钥信息。而我是win10,且偏偏.ssh 目录下缺少 known_hosts文件。
最后在 stackoverflow 上找到解答,一试即灵:
ssh-keyscan -t rsa github.com >> ~/.ssh/known_hosts

以上,谨做记录,以供有需要的同学。

### Git生成SSH密钥失败解决方案 在中文环境下,如果遇到Git生成SSH密钥失败的情况,可能是由于多种原因引起的。以下是详细的解决方案: #### 检查并修复本地环境设置 确保系统的区域和语言设置正确无误。有时,操作系统中的字符编码问题可能导致命令行工具无法正常工作。可以尝试更改系统默认的语言和地区设置为英文,再进行操作。 #### 验证安装路径与权限 确认使用的Git版本及其安装目录是否存在问题。部分情况下,在`C:\Program Files\GitWP\bin`这样的特殊位置运行可能会因为文件夹权限不足而造成命令执行异常。建议切换至用户的主目录或其他具有写入权限的位置来发起`ssh-keygen`指令[^2]。 #### 处理用户名及环境变量中的潜在冲突 当本机存在含有中文字符的用户名或者其他环境变量时,这可能干扰到SSH密钥的生成过程。可以通过临时修改这些参数或者调整注册表项(仅限Windows平台),以排除此类因素的影响[^3]。 #### 步骤指导:重新生成SSH密钥 为了安全起见,并且考虑到之前的操作未成功,推荐按照标准流程再次尝试创建新的SSH密钥对: ```bash # 执行此命令启动交互式的密钥生成向导 $ ssh-keygen -t rsa -b 4096 -C "your_email@example.com" ``` 在此过程中,可以选择按回车键接受所有的默认选项,除非有特别的需求指定保存位置或设定密码短语。完成上述步骤后,应能在用户家目录下的`.ssh/`子文件夹内找到新产生的私钥(`id_rsa`)和对应的公钥(`id_rsa.pub`)。 #### 将公钥添加到远程仓库服务提供商处 最后一步是把刚刚生成的公共密钥上传给目标代码托管站点(Bitbucket/GitHub等),以便建立信任关系从而实现无缝的身份验证。具体方法取决于所选的服务商文档说明[^4]。
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

棋了个怪啊_Rachel

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值