❓前言:按照传统方式推送,发生错误

之前推送的代码和笔记都存放在国内的Gitee中,作为小白第一次使用GitHub,然而遇到了一些问题。

如果用国内Gitee的方式 命令如下
Gitee上创建仓库 https://XXXXXXXXX.git
本地初始化 git init
拉取代码 git clone https://XXXXXXXXX.git
添加远程仓库地址 git remote add origin <地址>
设置当前分支为 master git branch -M master
添加全部文件并提交 git add .
git commit -m “first commit”
推送到 Gitee 的 master 分支 git push -u origin master

我按照以上流程操作github,出现如下报错:

$ git push -u origin master
fatal: unable to access 'https://github.com/AlgorithmBingo/Java.git/': Failed to connect to github.com port 443 after 21076 ms: Couldn't connect to server

也就是这表示 Git 无法通过 HTTPS 的 443 端口连接 GitHub,墙的问题。


思考我的现状,排查原因,列出可能的问题,逐一解决:

我的目前方式 可能的原因 建议操作
代理 + VPN 访问 GitHub 代理/VPN配置没作用,或Git没有走代理,或公司网络限制 设置 Git 专用代理 或换用 SSH
报端口443超时 1. 网络被封锁(公司屏蔽HTTPS)
2. Git未走代理/VPN
3. 代理/VPN服务不可用
尝试 curl https://github.com 检查连通性;配置 Git 代理或换网络
用 HTTPS 远程地址 https://github.com/... 走的是 443 端口,容易被拦截 改成 SSH 地址 git@github.com:... 避免443限制
Git push/pull 报错 端口被拦截 / 未认证 / 没配置代理 / 未设置 SSH 配置 Git 代理或设置 SSH Key 并换成 SSH 地址
浏览器能访问 GitHub,但 Git 不行 Git 未走系统代理;命令行网络不同 配置 Git 代理,或 Git 使用 SSH 协议
在公司内网 公司限制 GitHub 域名或端口 用手机热点测试确认,再决定是否走 SSH + 自建代理方案

于是有了以下操作,详细步骤一步步来,防止因为小细节发生错误:


✅ 现在的目标是:

把 Git 从 HTTPS(容易被限制) 改成 SSH(更稳定)


🧩 一、生成 SSH Key(只做一次,没生成过才需要)

  1. 打开 Git Bash 或 CMD,执行:

    ssh-keygen -t ed25519 -C "你的GitHub邮箱"
    

    如果你用的是旧系统不支持 ed25519,可用 rsa

    ssh-keygen -t rsa -b 4096 -C "你的GitHub邮箱"
    

    如图:
    在这里插入图片描述

  2. 当提示输入保存路径时,直接回车,默认保存到:

    C:\Users\你的用户名\.ssh\id_ed25519
    
  3. 连续回车三次(不设密码也没问题):直到出现这样的图标
    在这里插入图片描述


🧩 二、添加 SSH Key 到 GitHub

  1. 查看公钥内容(复制下面这个文件的内容):

    cat ~/.ssh/id_ed25519.pub
    

    或 Windows 命令行:

    type %USERPROFILE%\.ssh\id_ed25519.pub
    

    在这里插入图片描述

  2. 登录 GitHub → 右上角头像 → Settings → 左侧 SSH and GPG keys
    在这里插入图片描述
    在这里插入图片描述

  3. 点击 New SSH key

    • Title:随便写(如“My Laptop”)
    • Key:粘贴你刚才复制的公钥内容(从 ssh-ed25519 开头)
      在这里插入图片描述

🧩 三、修改你的 Git 项目的远程地址为 SSH

  1. 进入你的项目目录:

    cd 你的项目路径
    
  2. 设置远程地址为 SSH(你问的对,就是这个):

    git remote set-url origin git@github.com:AlgorithmBingo/Java.git
    

    在这里插入图片描述

  3. 验证是否设置成功:

    git remote -v
    

    输出应该是:
    在这里插入图片描述


🧪 四、测试是否通了

ssh -T git@github.com

第一次会提示是否连接,输入 yes,如果看到:Hi XXX!说明 SSH 成功连上 GitHub。

在这里插入图片描述


🚀 五、推送代码

git push -u origin master

在这里插入图片描述

成功!
在这里插入图片描述

就不再走 HTTPS,绕过 443 端口了。


✅总结: Gitee(HTTPS) vs GitHub(SSH)首次提交完整流程

操作步骤 用 Gitee(HTTPS)方式 用 GitHub(SSH)方式
🏗️ 创建远程仓库 登录 Gitee → 创建仓库(获取地址如 https://gitee.com/用户名/仓库名.git 登录 GitHub → 创建仓库(获取地址如 git@github.com:用户名/仓库名.git
🖥️ 本地初始化 git init git init
🌍 添加远程地址 git remote add origin https://gitee.com/用户名/仓库名.git git remote add origin git@github.com:用户名/仓库名.git
基本上只有这里换了
🛠️ 设置当前分支 git branch -M master git branch -M master
📦 添加并提交代码 git add .
git commit -m "first commit"
git add .
git commit -m "first commit"
🚀 推送到远程仓库 git push -u origin master git push -u origin master
🔐 特别准备 需要先配置 SSH Key(只做一次)
ssh-keygen → 添加到 GitHub
🧪 测试远程连通性 可选:git ls-remote origin 必须测试 SSH:ssh -T git@github.com,看到 Hi 用户名! 代表成功

🚧 注意事项对比

对比项 Gitee(HTTPS) GitHub(SSH)
是否易被墙 很少被墙 HTTPS容易被墙,SSH更稳定
是否需要代理 不需要 HTTPS需代理/VPN,SSH基本能通
是否需设置SSH Key 不需要 需要一次性配置 SSH Key
适合初学者程度 非常友好 初学者需跟教程操作,稍复杂但稳定

✨ありがとう、さようなら〜

Logo

免费领 150 小时云算力,进群参与显卡、AI PC 幸运抽奖

更多推荐