【GIT】GitHub添加ssh密钥

简介: 【GIT】GitHub添加ssh密钥

在想要克隆GitHub项目到本地时,通常开源通过https和ssh两种方式,由于GitHub的服务器步数在海外,https连接受网络波动的影响较大,经常会出现连接中断的情况,相比之下,用ssh方式进行克隆显得更加方便和高效。


GitHub 的 SSH 密钥用于对你的 GitHub 账号进行身份验证,以便你能够通过 SSH 安全地连接和进行操作。使用 SSH 密钥,你可以在与 GitHub 远程仓库进行交互时,无需每次都输入用户名和密码。

以下是 GitHub SSH 密钥的功能和优点:

  1. 身份验证:通过将你的 SSH 公钥与 GitHub 关联,你可以使用私钥对你的身份进行验证。这样,你可以在与 GitHub 进行通信时,无需提供用户名和密码。
  2. 安全性:SSH 密钥使用非对称加密算法来进行身份验证,这意味着你的私钥用于加密信息,而只有对应的公钥能够解密。这种加密机制确保了通信的安全性。
  3. 便利性:一旦将 SSH 密钥添加到你的 GitHub 账号中,你可以通过 SSH 协议与 GitHub 远程仓库进行通信,而无需每次都输入用户名和密码。这样可以提高操作的便捷性和效率。
  4. 多个仓库访问:使用 SSH 密钥,你可以轻松地在多个仓库之间进行切换,而无需频繁输入凭据。只要你的 SSH 密钥已与相应的仓库关联,你就可以直接访问它们。


要使用 SSH 密钥与 GitHub 进行交互,需要在 GitHub 上生成 SSH 密钥对,并将公钥添加到 GitHub 账号中。下面简单介绍一下在GitHub中添加ssh密钥的具体流程:

参考:GitHub官方文档


1.检查现有ssh密钥


$ ls -al ~/.ssh


检查目录列表以查看是否已经有 SSH 公钥。 默认情况下,GitHub 的一个支持的公钥的文件名是以下之一。

  • id_rsa.pub
  • id_ecdsa.pub
  • id_ed25519.pub


2.生成新的ssh密钥


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


在提示符下,键入安全密码:


Enter passphrase (empty for no passphrase): [Type a passphrase]
Enter same passphrase again: [Type passphrase again]


3.将ssh密钥添加到ssh-agent


# start the ssh-agent in the background
$ eval "$(ssh-agent -s)"
> Agent pid 59566


4.将ssh私钥添加到ssh-agent


$ ssh-add ~/.ssh/id_ed25519
• 1


5.将ssh公钥添加到GitHub上的帐户

  • 将 SSH 公钥复制到剪贴板


$ clip < ~/.ssh/id_ed25519.pub
  • GitHub页面的右上角个人中心——settings——SSH 和 GPG 密钥——新建 SSH 密钥

按提示操作即可。

目录
相关文章
|
1天前
|
Devops Shell 网络安全
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
|
2月前
|
网络安全 开发工具 git
解决fatal:remote error:You can’t push to git://github.com/username/*.g
通过上述诊断与修复步骤,绝大多数的推送错误都能得到有效解决,确保您的Git工作流顺畅无阻。
114 1
|
2月前
|
Linux 网络安全 开发工具
IDEA如何配置git和github
【11月更文挑战第14天】本指南详细介绍了如何在 IntelliJ IDEA 中配置 Git 和 GitHub,包括检查和设置 Git 路径、测试配置,以及通过 SSH 或 HTTPS 方式配置 GitHub 仓库的具体步骤。完成配置后,用户可在 IDEA 中轻松进行版本控制操作。
198 0
|
3月前
|
Unix Shell 网络安全
git学习六:(bug总结)git@github.com: Permission denied (publickey).等
本文是关于解决在使用Git和GitHub时遇到的“git@github.com: Permission denied (publickey)”错误的指南。文章提供了详细的步骤,包括确认SSH Agent运行状态、检查密钥配置、确保密钥匹配、验证仓库URL、检查权限和代理设置,以及配置SSH文件。这些步骤帮助用户诊断并解决SSH认证问题。
299 0
|
5月前
|
网络协议 Shell 网络安全
ssh: connect to host github.com port 22: Connection refused
本文讨论了在使用Git命令操作GitHub时遇到的"ssh: connect to host github.com port 22: Connection refused"错误,分析了可能的原因,并提供了使用443端口或https协议作为解决方案,最终确定问题是由于DNS解析错误导致,通过修改hosts文件解决。
ssh: connect to host github.com port 22: Connection refused
|
4月前
|
开发工具 git 开发者
掌握版本控制的艺术:Git 与 GitHub 的高效使用指南
在软件开发中,版本控制对于代码管理和团队协作至关重要。本文详细介绍了 Git 的核心概念与命令,包括初始化、创建仓库、文件跟踪、分支管理和远程仓库操作。同时,探讨了如何利用 GitHub 进行项目组织、代码审查及自动化工作流。通过遵循最佳实践,如频繁提交、清晰的信息记录和合理使用分支,开发者可以提升工作效率和团队协作能力,确保项目的持续成功。
|
4月前
|
Shell 网络安全 开发工具
Git,GitHub,Gitee&IDEA集成Git
Git提交项目到GitHub简洁版、版本控制、安装、常用命令、分支、团队协作机制、Github、Gitee远程仓库、IDEA集成Git、IDEA集成Github、IDEA集成Gitee
|
4月前
|
Shell 网络安全 开发工具
fatal: unable to access 'https://github.com/wolfcw/libfaketime.git/': Encountered end of file
fatal: unable to access 'https://github.com/wolfcw/libfaketime.git/': Encountered end of file
|
5月前
|
安全 网络协议 Shell
Github代码仓库SSH配置流程
这篇文章是关于如何配置SSH以安全地连接到GitHub代码仓库的详细指南,包括使用一键脚本简化配置过程、生成SSH密钥对、添加密钥到SSH代理、将公钥添加到GitHub账户以及测试SSH连接的步骤。
104 0
Github代码仓库SSH配置流程
|
5月前
|
存储 安全 算法
如何使用 PuTTY 创建 SSH 密钥以连接到 VPS
如何使用 PuTTY 创建 SSH 密钥以连接到 VPS
92 2