pycharm连接GitHub,怎么配置 SSH 密钥并改用 SSH 连接

先说结论:用ssh主要解决本地连接GitHub时用https网络不稳定,老连不上。

觉得下面排版有问题,可以直接把"具体给我说说怎么配置 SSH 密钥并改用 SSH 连接"发给腾讯元宝,还有windows系统用下面的cat 命令会报错,单独写一篇再讲。

配置 SSH 密钥并改用 SSH 连接 GitHub 是解决网络连接问题的一个好方法,通常比 HTTPS 更稳定。下面是具体的步骤。

🔑 生成 SSH 密钥对

首先,你需要在你本地电脑上生成一对 SSH 密钥(一个公钥,一个私钥)。

  1. ​打开终端​​ (Windows 用户可使用 Git Bash 或 PowerShell)。

  2. ​生成密钥​ ​:运行以下命令,将 your_email@example.com替换为你 GitHub 账户绑定的邮箱(这只是一个标识)。

    ssh-keygen -t ed25519 -C "your_email@example.com"

    • 如果系统提示不支持 ed25519算法,可以使用 RSA:

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

  3. ​指定保存路径和密码​​:

    • 按回车使用默认保存路径(通常是 ~/.ssh/id_ed25519~/.ssh/id_rsa)。

    • 系统会提示你为密钥设置一个密码(passphrase)。设置密码可以增加安全性,但每次使用密钥时都需要输入。你也可以直接回车留空。

📋 将 SSH 公钥添加到 GitHub

生成密钥后,需要将公钥添加到你的 GitHub 账户。

  1. ​复制公钥内容​ ​:使用以下命令显示并复制公钥内容(从终端输出中复制,通常以 ssh-ed25519ssh-rsa开头):

    cat ~/.ssh/id_ed25519.pub

    或者,如果使用的是 RSA:

    cat ~/.ssh/id_rsa.pub

  2. ​在 GitHub 上添加公钥​​:

    • 登录 GitHub,点击右上角头像,进入 ​​Settings​​。

    • 在左侧边栏中选择 ​​SSH and GPG keys​​。

    • 点击 ​​New SSH key​​。

    • 在 "Title" 中为密钥取一个易于识别的名字(例如 "My Work Laptop")。

    • 将刚才复制的公钥内容粘贴到 "Key" 字段中。

    • 点击 ​​Add SSH key​​。

✅ 测试 SSH 连接

添加公钥后,测试一下是否配置成功。

  1. 在终端中运行:

    ssh -T git@github.com

  2. 你可能会看到类似如下的警告,输入 yes继续:

    The authenticity of host 'github.com (IP ADDRESS)' can't be established. Are you sure you want to continue connecting (yes/no/[fingerprint])?

  3. 如果配置成功,你会看到如下提示:

    Hi username! You've successfully authenticated, but GitHub does not provide shell access.

🔄 将现有仓库的远程地址切换为 SSH

如果你的本地仓库之前使用的是 HTTPS 协议,需要将其切换为 SSH。

  1. ​查看当前远程仓库地址​​:

    git remote -v

    这会显示当前的远程地址,可能是以 https://github.com/...开头。

  2. ​切换为 SSH 地址​​:

    git remote set-url origin git@github.com:username/repository.git

    请将 username替换为你的 GitHub 用户名,repository替换为你的仓库名。

  3. ​再次验证​​:

    git remote -v

    现在应该显示以 git@github.com:开头的 SSH 地址。

🆕 后续使用 SSH 克隆仓库

之后克隆新仓库时,直接使用 SSH URL 即可:

git clone git@github.com:username/repository.git

⚠️ 可能遇到的问题及解决方法

  • ​权限错误 (Permissions too open)​ ​:如果遇到 WARNING: UNPROTECTED PRIVATE KEY FILE!,说明私钥文件的权限太开放。可以运行以下命令修复:

    chmod 600 ~/.ssh/id_ed25519

  • ​管理密钥密码​ ​:如果你为密钥设置了密码,并且不想每次使用都输入,可以借助 ssh-agent来管理

    eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_ed25519

  • ​多个 GitHub 账户或密钥​ ​:如果你需要为不同的 GitHub 账户使用不同的密钥,可以在 ~/.ssh/config文件中进行配置

相关推荐
草梅友仁16 小时前
Nano Banana Pro AI 图像生成模型与创意实践 | 2025 年第 48 周草梅周报
开源·github·aigc
今天没有盐18 小时前
Python数据分析实战:从超市销售到教学评估
python·pycharm·编程语言
前端伪大叔1 天前
第29篇:99% 的量化新手死在挂单上:Freqtrade 隐藏技能揭秘
后端·python·github
摇滚侠1 天前
零基础小白自学 Git_Github 教程,发现工具寻找灵感,笔记04
笔记·github
无限进步_2 天前
C语言数组元素删除算法详解:从基础实现到性能优化
c语言·开发语言·windows·git·算法·github·visual studio
BBB努力学习程序设计2 天前
Python面向对象编程:从代码搬运工到架构师
python·pycharm
BBB努力学习程序设计2 天前
Python错误处理艺术:从崩溃到优雅恢复的蜕变
python·pycharm
今天没有盐2 天前
Python算法实战:从滑动窗口到数学可视化
python·pycharm·编程语言
天外飞雨2 天前
把代码提交到github
github
happyCoder2 天前
VS Code Git 神器:内置功能与GitLens插件使用技巧
git·github