【Git】使用 SSH 进行 Git 操作的完整步骤

目录

      • [步骤 1: 生成 SSH 密钥](#步骤 1: 生成 SSH 密钥)
      • [步骤 2: 添加公钥到 GitHub](#步骤 2: 添加公钥到 GitHub)
      • [步骤 3: 测试 SSH 连接](#步骤 3: 测试 SSH 连接)
      • [步骤 4: 修改远程仓库 URL 为 SSH](#步骤 4: 修改远程仓库 URL 为 SSH)
      • [步骤 5: 配置 Git 用户信息(如果还没有配置)](#步骤 5: 配置 Git 用户信息(如果还没有配置))
      • [步骤 6: 提交并推送更改](#步骤 6: 提交并推送更改)
      • [步骤 7: 后续操作](#步骤 7: 后续操作)
      • 总结

下面是使用 SSH 进行 Git 操作的完整步骤。从 git clonegit push,并确保之后不需要输入密码。

步骤 1: 生成 SSH 密钥

  1. 打开 终端

  2. 生成一个新的 SSH 密钥对:

    bash 复制代码
    ssh-keygen -t ed25519 -C "your_email@example.com"
    • -t ed25519:指定使用 Ed25519 算法生成 SSH 密钥。
    • -C 用来为密钥添加一个注释(一般是你的邮箱地址)。
  3. 系统会提示你保存密钥的位置,按 回车 使用默认位置(~/.ssh/id_ed25519)。

  4. 然后系统会要求你输入 密码短语 (passphrase),这一步是可选的,可以直接按 回车 跳过。

    bash 复制代码
    Enter file in which to save the key (/Users/youruser/.ssh/id_ed25519):
    Enter passphrase (empty for no passphrase):

    这样,你就成功生成了 SSH 密钥对。id_ed25519 是私钥文件,id_ed25519.pub 是公钥文件。


步骤 2: 添加公钥到 GitHub

  1. 复制你的公钥(id_ed25519.pub)内容:

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

    复制输出的内容。

  2. 打开 GitHub SSH 密钥设置页面,点击 New SSH key

  3. Title 中填一个你方便识别的名字(例如 "MacBook"),然后将复制的公钥粘贴到 Key 框中。

  4. 点击 Add SSH key 保存。


步骤 3: 测试 SSH 连接

确保你的 SSH 配置正确,测试与 GitHub 的连接:

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

如果成功,会显示:

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

这表示你的 SSH 配置已经成功并且能够与 GitHub 建立连接。


步骤 4: 修改远程仓库 URL 为 SSH

你已经设置好了 SSH 密钥,接下来需要将本地仓库的远程 URL 修改为 SSH 格式。

  1. 克隆仓库(如果还没有克隆的话):

    bash 复制代码
    git clone https://github.com/LuckiBit/LuckiVim.git
    cd LuckiVim
  2. 确认当前远程 URL 是 HTTPS 格式:

    bash 复制代码
    git remote -v

    你会看到类似下面的输出:

    bash 复制代码
    origin  https://github.com/LuckiBit/LuckiVim.git (fetch)
    origin  https://github.com/LuckiBit/LuckiVim.git (push)
  3. 使用以下命令将远程仓库 URL 修改为 SSH 格式:

    bash 复制代码
    git remote set-url origin git@github.com:LuckiBit/LuckiVim.git
  4. 再次检查远程 URL,确保它已经被修改为 SSH:

    bash 复制代码
    git remote -v

    输出应该是:

    bash 复制代码
    origin  git@github.com:LuckiBit/LuckiVim.git (fetch)
    origin  git@github.com:LuckiBit/LuckiVim.git (push)

步骤 5: 配置 Git 用户信息(如果还没有配置)

确保 Git 使用你正确的用户名和电子邮件进行提交:

bash 复制代码
git config --global user.name "Your Name"
git config --global user.email "your_email@example.com"

步骤 6: 提交并推送更改

  1. 修改文件后,执行以下命令来 添加提交

    bash 复制代码
    git add .
    git commit -m "Your commit message"
  2. 使用以下命令将更改 推送 到 GitHub:

    bash 复制代码
    git push

    由于你已经配置了 SSH,Git 会自动使用 SSH 密钥进行认证,而不再需要输入密码或 token。


步骤 7: 后续操作

  • 克隆仓库时,直接使用 SSH 链接:

    bash 复制代码
    git clone git@github.com:LuckiBit/LuckiVim.git
  • 推送拉取查看分支等操作时,Git 会自动使用 SSH 密钥认证,你无需再次输入用户名和密码。


总结

你现在已经成功配置了 Git 使用 SSH 推送到 GitHub,以下是主要步骤:

  1. 生成 SSH 密钥对,并添加到 GitHub。
  2. 修改远程仓库 URL 为 SSH 格式。
  3. 提交并推送更改时,Git 会自动使用 SSH 密钥认证。

这样配置后,未来所有 Git 操作都不再需要输入密码,流程简单高效。

  1. 本节内容已经全部介绍完毕,希望通过这篇文章,大家对 git 有了更深入的理解和认识。
  2. 感谢各位的阅读和支持,如果觉得这篇文章对你有帮助,请不要吝惜你的点赞和评论 ,这对我们非常重要。再次感谢大家的关注和支持点我关注❤️
相关推荐
码云之上13 分钟前
从一个截图函数到一个 npm 包——pdf-snapshot 的诞生记
前端·node.js·github
阿祖zu1 小时前
内容创作 AI 透明化声明倡议与项目开源
前端·后端·github
AI成长日志1 小时前
【GitHub开源项目专栏】深度拆解:LangChain智能体系统架构设计与实现原理
langchain·开源·github
DoUfp0bgq2 小时前
解决RDK X5(ARM64架构)板卡Remote-SSH运行Antigravity AI崩溃(SIGILL):Samba网络盘本地挂载方案
人工智能·架构·ssh
OPHKVPS5 小时前
WebRAT恶意软件借GitHub伪造漏洞利用程序传播
网络·安全·github
逛逛GitHub5 小时前
这个开源 skill 专门炼化你的离职同事。
github
程序猿编码5 小时前
eBPF代理:让SSH进程“溯源”,找到背后的客户端IP
linux·tcp/ip·ssh·ebpf
逛逛GitHub6 小时前
Karpathy 开源了 Agent + Obsidian 个人知识库, 超级有启发。
github
Learn-Share_HY7 小时前
[IT Network]如何在cisco packet tracer建立ssh的連線?
ubuntu·ssh·switch·cisco·networking·packettracer·networktutorial
数据知道7 小时前
claw-code 源码详细分析:Remote / SSH / Teleport / Deep Link——运行时分支爆炸怎样用「模拟模式」先收束状态机?
运维·ai·ssh·claude code