​ 由于有很长一段是时间没更新博客,我发现我的博客推送到github平台出现下面这种报错

1729956963701

一开始以为是我没开代理的原因,结果并不是,初步估计判断是我的DNS被污染了,前段时间系统DNS自动配置也出了问题,现在还是手动设置的,但是我正常使用梯子可以访问国外的油管,按道理来说应该没毛病,实在是让人摸不着头脑,所有我们另辟蹊径,使用SSH代理,进行推送,绝对有效,放心食用.

1. 确认 OpenSSH 已安装

首先,确保您的系统上已经安装了 OpenSSH 客户端。您可以通过以下步骤检查和安装:

使用 PowerShell 检查 OpenSSH

打开 PowerShell 并运行以下命令:

powershell

1
Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'

1729957850903

显示如果和我一样就是已经安装好OpenSHH客户端和服务器了,

如果 OpenSSH 客户端未安装,您可以使用以下命令安装:

1
2
# 安装 OpenSSH 客户端
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

如果 OpenSSH 服务器未安装,您可以使用以下命令安装

1
2
# 安装 OpenSSH 服务器
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

2. 生成 SSH 密钥对

如果您还没有生成 SSH 密钥对,可以使用以下命令生成:

powershell

1
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

your_email@example.com“是你登入github使用的邮箱账号

按照提示操作,生成的密钥对将保存在 C:\Users\86195\.ssh\ 目录下,文件名为 id_rsa(私钥)和 id_rsa.pub(公钥)。

3. 启动 SSH 代理并添加私钥

在 Windows 上,您可以使用 PowerShell 启动 SSH 代理并添加私钥:

启动 SSH 代理

powershell

1
2
Start-Service ssh-agent
Set-Service -Name ssh-agent -StartupType Automatic

添加私钥到 SSH 代理

powershell

1
ssh-add C:\Users\86195\.ssh\id_rsa

4. 配置 SSH

编辑或创建 C:\Users\86195\.ssh\config 文件,添加以下内容:

plaintext

1
2
3
4
5
6
Host github.com
User git
Hostname ssh.github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
Port 443

5. 将公钥添加到 GitHub

  1. 登录到您的 GitHub 账户。

  2. 访问 Settings > SSH and GPG keys。

  3. 点击 “New SSH key” 或 “Add SSH key”。

  4. 在 “Title” 字段中,输入一个描述(例如 “My Laptop”)。

  5. 在 “Key” 字段中,粘贴您的公钥内容。您可以使用以下命令查看并复制公钥内容:

    powershell

    1
    Get-Content C:\Users\86195\.ssh\id_rsa.pub
  6. 点击 “Add key”。

6. 测试 SSH 连接

powershell

1
ssh -T git@github.com

如果一切设置正确,您将看到一条欢迎消息,表明您已成功连接到 GitHub如下图。

1729958508692

最后一步:把你根目录文件下的

_config.yml

这个文件里面的deploy设置为ssh即可

1
2
3
4
deploy:
type: git
repository: git@github.com:your_name/your_name.github.io.gi
branch: main

这样恭喜你就可以通过SSH代理的方式推送了,就算没成功,你也可以试试别的方法,不要放弃,加油