在 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 的使用,建议参考官方文档或相关教程。

相关推荐
草莓熊Lotso2 小时前
Linux 文件描述符与重定向实战:从原理到 minishell 实现
android·linux·运维·服务器·数据库·c++·人工智能
历程里程碑2 小时前
Linux22 文件系统
linux·运维·c语言·开发语言·数据结构·c++·算法
passerby60619 小时前
完成前端时间处理的另一块版图
前端·github·web components
wdfk_prog9 小时前
[Linux]学习笔记系列 -- [drivers][input]input
linux·笔记·学习
七夜zippoe10 小时前
CANN Runtime任务描述序列化与持久化源码深度解码
大数据·运维·服务器·cann
盟接之桥10 小时前
盟接之桥说制造:引流品 × 利润品,全球电商平台高效产品组合策略(供讨论)
大数据·linux·服务器·网络·人工智能·制造
忆~遂愿10 小时前
ops-cv 算子库深度解析:面向视觉任务的硬件优化与数据布局(NCHW/NHWC)策略
java·大数据·linux·人工智能
湘-枫叶情缘10 小时前
1990:种下那棵不落叶的树-第6集 圆明园的对话
linux·系统架构
草梅友仁11 小时前
墨梅博客 1.4.0 发布与开源动态 | 2026 年第 6 周草梅周报
开源·github·ai编程
Fcy64811 小时前
Linux下 进程(一)(冯诺依曼体系、操作系统、进程基本概念与基本操作)
linux·运维·服务器·进程