github/git密钥配置与使用

news/2024/12/22 0:01:11/

零、前言

因为要在ubuntu上做点东西,发现git clone 的时候必须输账户密码,后来发现密码是token,但是token一大串太烦了,忙了一天发现可以通过配置 公钥 来 替代 http 的 部署方式。


一、生成 ssh 密钥对

我们先测试下能不能 连接上,发现直接 deny 了

root@LAPTOP-292TJJC6:~/.ssh# ssh -T git@github.com
The authenticity of host '[ssh.github.com]:443 ([20.205.243.160]:443)' can't be established.
ECDSA key fingerprint is SHA256:p2QAMXNIC1TJYWeIOttrVc98/R1BUFWu3/LiyKgUfQM.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '[ssh.github.com]:443,[20.205.243.160]:443' (ECDSA) to the list of known hosts.
git@ssh.github.com: Permission denied (publickey).

然后在 终端中输入 ssh-keygen

第一个让设置放在哪我们直接回车不用管

然后会让你输入一个密码,确认密码

root@LAPTOP-292TJJC6:~# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa
Your public key has been saved in /root/.ssh/id_rsa.pub

此时就会给我们生成一个密钥,我这里是在 /root/.ssh/id_rsa

我们进入,发现有还有另一个文件: id_rsa.pub

root@LAPTOP-292TJJC6:~# cd /root/.ssh/
root@LAPTOP-292TJJC6:~/.ssh# ll
total 24
drwx------ 2 root root 4096 Oct  3 21:13 ./
drwx------ 9 root root 4096 Oct  3 21:11 ../
-rw-r--r-- 1 root root   58 Oct  3 21:11 config
-rw------- 1 root root 2655 Oct  3 21:14 id_rsa
-rw-r--r-- 1 root root  574 Oct  3 21:14 id_rsa.pub
-rw-r--r-- 1 root root  888 Oct  3 21:11 known_hosts

pub 即 public,就是公钥(不带pub的那个就是私钥)

我们打开复制,然后进入下一个part

二、配置 GitHub 公钥

进入 settings

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

进入 SSH and GPG keys

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

点击创建一个新的 SSH key

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

然后把我们的公钥粘贴到下面,点确认就好了

三、测试链接

我们回到Ubuntu来测试一下行不行。

root@LAPTOP-292TJJC6:~/.ssh# ssh -T git@github.com
Enter passphrase for key '/root/.ssh/id_rsa':
Hi 58164! You've successfully authenticated, but GitHub does not provide shell access.

这个时候 git clone 也能通过 ssh 来部署了 哈铪(搞一天快哭了

tHub does not provide shell access.


这个时候 git clone 也能通过 ssh 来部署了 哈铪(搞一天快哭了

http://www.ppmy.cn/news/1534498.html

相关文章

ETLCloud携手ClickHouse:高效的数据查询效率

自从大数据处理技术走进大众视野、开源项目Hadoop的出现,以前受制于数据库处理能力的大数据技术蓬勃发展,传统关系型数据库所构建的数据仓库,被以Hive为代表的大数据技术所取代,随着技术不断发展,Hadoop虽然带来了诸多…

Object.values() 、 Object.keys()

拿到当前对象里面的value值 // 假设你有一个对象 const myObject {name: Kimi,age: 30,country: Moon };// 获取对象的所有值 const values Object.values(myObject);// 输出值数组 console.log(values); // ["Kimi", 30, "Moon"] 如果你需要在 Vue 组…

使用 Vue3 和 Axios 实现 CRUD 操作

文章目录 1、准备工作2、创建 Vue 3 项目3、项目结构4、实现 CRUD 操作5、运行项目6、小结在当今的前端开发中,Vue.js 作为一款流行的 JavaScript 框架,正在被越来越多的开发者所青睐。尤其是 Vue 3 引入了 Composition API 和更优雅的响应式处理,使得模板编写和状态管理变得…

Build a Large Language Model (From Scratch)学习汇总

目录 中文理解代码电子书全文中文翻译第1章:理解大型语言模型第2章:处理文本数据第3章:编码Attention机制第4章:从零实现GPT模型第5章:在未标记数据上进行预训练第6章:用于文本分类的微调第7章:…

行为设计模式 -策略设计模式- JAVA

策略设计模式 一 .简介二. 案例2.1 抽象策略(Strategy)类2.2 具体策略(Concrete Strategy)类2.3 环境(Context)类2.4 测试 三. 结论3.1 优缺点3.2 使用场景 前言 这是我在这个网站整理的笔记,有错误的地方请…

Docekrfile和docker compose编写指南及注意事项

Dockerfile 基础语法 我们通过编写dockerfile,将每一层要做的事情使用语法固定下来,之后运行指令就可以通过docker来制作自己的镜像了。 构建镜像的指令:docker build /path -t imageName:tag 注意,docker build后的path必须是dockerfile…

关于Elastic Search与MySQL之间的数据同步

目录 前言 思路分析 同步调用 异步通知 监听binlog 选择 实现数据同步 思路 运行项目 声明交换机、队列 1)引入依赖 2)声明队列交换机名称 3)声明队列交换机 发送MQ消息 接收MQ消息 前言 Elastic Search中的酒店数据来自于MyS…

创建实体类pojo实现Serializable接口

案例如下: 一、什么是Serializable接口 在 Java 中,Serializable 接口是一个标记接口,它的主要作用是指示一个类的对象可以被序列化。 序列化是将对象转换为字节流的过程,以便将其保存到文件、通过网络传输或存储在数据库中&…