在 Linux 系统上连接 GitHub 的方法 (适用2025年)

在2025年,使用 Linux 系统连接 GitHub 的推荐方式是通过 SSH (Secure Shell) 协议进行身份验证。这种方式不仅安全,还能免去每次操作时输入用户名和密码的繁琐。


🛠️ 步骤一:检查并安装 Git

首先,确保你的系统已安装 Git:

bash 复制代码
git --version

如果未安装,使用下面的命令安装 (Debian/Ubuntu 系统):

bash 复制代码
sudo apt update
sudo apt install git

🔑 步骤二:生成 SSH 密钥

生成 SSH 密钥对,用于与 GitHub 进行安全通信:

bash 复制代码
ssh-keygen -t ed25519 -C "your_email@example.com"
  • -t ed25519:指定密钥类型
  • -C:注释信息,通常填入 GitHub 注册邮箱

按回车使用默认路径(~/.ssh/id_ed25519

(这里需要注意一下路径,这个路径会因为个体机器不同而变化。)


📋 步骤三:将 SSH 公钥添加到 GitHub

  1. 查看并复制公钥内容:

    bash 复制代码
    cat ~/.ssh/id_ed25519.pub
  2. 登录 GitHub ,进入 SSH and GPG keys 页面

  3. 点击"New SSH key"

  4. 填写 Title:My Linux Laptop ;Key 填写复制的公钥

  5. 点击"Add SSH key" 完成


🧪 步骤四:测试 SSH 连接

bash 复制代码
ssh -T git@github.com

第一次连接时,系统会提示确认,输入 yes,如果成功,会显示:

bash 复制代码
Hi username! You've successfully authenticated, but GitHub does not provide shell access.

📁 步骤五:克隆仓库或添加远程仓库

克隆仓库:

bash 复制代码
git clone git@github.com:username/repository.git

或者添加远程仓库:

bash 复制代码
git remote add origin git@github.com:username/repository.git

usernamerepository 替换为你的 GitHub 用户名和项目名


✅ 常见问题解答

Q1:如果我已经有了 SSH 密钥,还需要重新生成吗?

A1: 如果已有密钥,且未被其他服务使用,可直接使用:

bash 复制代码
cat ~/.ssh/id_ed25519.pub

Q2:如何在多台设备上使用同一 GitHub 账户?

A2: 每台设备单独生成密钥,将公钥添加到 GitHub ,GitHub 支持多个 SSH 公钥


Q3:如何删除不再使用的 SSH 密钥?

A3: 登录 GitHub,进入 SSH and GPG keys ,点击"Delete" 删除相应密钥


至此,你已经成功在 Linux 系统上配置了 SSH 以连接 GitHub,安全且高效!

如需进一步了解 Git 和 GitHub 的使用,建议参考官方文档或相关教程。

相关推荐
晚风予卿云月1 分钟前
【Linux】环境变量概念、作用、配置与修改详解
linux·运维·服务器·环境变量
r-t-H8 分钟前
从零开始搭建CDH-第十二章
linux·hive·spark·centos·hbase
~黄夫人~20 分钟前
零基础速通|Windows&Linux 常用命令行对照表大全
linux·运维·windows·笔记·备忘录·整理表格
benjiangliu24 分钟前
LINUX系统-17-EXT系列文件系统(二)
linux·运维·服务器
杨云龙UP25 分钟前
Linux 根分区被日志吃满?一次 58G Broker 日志清理实战_2026-05-20
linux·运维·服务器·数据库·hdfs·apache
络合白泽36 分钟前
Debian 13 + NVIDIA Optimus 笔记本:从零配置 Wayland Explicit Sync 完整指南
运维·debian
珠海西格电力1 小时前
零碳园区的碳排放指标计算的实操步骤
大数据·运维·人工智能·物联网·能源
叶半欲缺1 小时前
Linux通过lvm扩容根目录
linux·运维·服务器
utf8mb4安全女神2 小时前
Linux网络服务
linux·运维·服务器
vortex52 小时前
Linux PAM 配置详解:从原理到实战,彻底阻断非授权提权
java·linux·服务器