当前位置: 首页 > news >正文

github ssh密钥配置,克隆远程仓库

GitHub的SSH配置

在往github上push项目的时候,如果走https的方式,每次都需要输入账号密码,非常麻烦。而采用ssh的方式,就不再需要输入,只需要在github自己账号下配置一个ssh key即可!

很多朋友在用github管理项目的时候,都是直接使用https url克隆到本地,当然也有有些人使用 SSH url 克隆到本地。

然而,为什么绝大多数人会使用https url克隆呢?

这是因为,使用https url克隆对初学者来说会比较方便,复制https url 然后到 git Bash 里面直接用clone命令克隆到本地就好了。而使用 SSH url 克隆却需要在克隆之前先配置和添加好 SSH key 。

因此,如果你想要使用 SSH url 克隆的话,你必须是这个项目的拥有者。否则你是无法添加 SSH key 的。

https 和 SSH 的区别

1、前者可以随意克隆github上的项目,而不管是谁的;而后者则是你必须是你要克隆的项目的拥有者或管理员,且需要先添加 SSH key ,否则无法克隆。
2、https url 在push的时候是需要验证用户名和密码的;而 SSH 在push的时候,是不需要输入用户名的,如果配置SSH key的时候设置了密码,则需要输入密码的,否则直接是不需要输入密码的。

在这里插入图片描述
看是否存在 id_rsa 和 id_rsa.pub文件,如果存在,说明已经有SSH Key,没有的话,创建新的ssh key。

创建SSH,克隆远程仓库到本地

(1) 创建新的ssh key
$ ssh-keygen -t rsa -C “content neirong”
-t :密钥的类型
-C : 用于识别密钥的注释
-C 一般大家都写的是Email邮箱

(1)创建SSH

ssh-keygen -t rsa -C "xxx@yeah.net" 

然后会在 .ssh 目录生产两个文件:id_rsa和id_rsa.pub
id_rsa 文件是私有密钥,id_rsa.pub是公开密钥。

(2)获取ssh key公钥内容(id_rsa.pub)
打开.ssh目录下的id_rsa.pub文件,复制里面的内容,或者直接执行命令查看

cat ~/.ssh/id_rsa.pub

(3) 验证是否设置成功
a.将公钥粘贴至github设置中的ssh,保存
在这里插入图片描述
b.现在验证一下用手中的私有密钥与GitHub进行认证和通信

ssh -T git@github.com

成功的提示

The authenticity of host 'github.com (xx.xx.xx.xx)' can't be established.RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.This key is not known by any other namesAre you sure you want to continue connecting (yes/no/[fingerprint])? yes (这里输入yes)出现以下说明成功通信:Hi xxx! You've successfully authenticated, but GitHub does not provide shell access.

1.使用ssh的地址克隆代码到本地

git clone git@github.com:xxx/analysxxx-vue.git

2.另外,我们可以通过-b 来指定要克隆的分支名,比如

$ git clone -b master2 …/server .

表示克隆名为master2的这个分支,如果省略-b 表示克隆master分支。

http://www.lryc.cn/news/18232.html

相关文章:

  • 突破年薪百万难关!吃透这套Java真题合集
  • [黑马程序员SSM框架教程] Spring-11-setter注入
  • Java多线程(一)--多线程基础知识
  • AutoDock, AutoDock-vina等对接工具安装
  • MySQL常见面试题(2023年最新)
  • C# 泛型详解
  • 数据仓库相关术语
  • 【IDEA】常用快捷键
  • 【调试】sysRq按键使用方法
  • Jenkins Pipeline 语法
  • rust语言实现超级简单的杀毒软件,通过哈希扫描病毒。
  • Git仓库中的常用命令
  • arduino和stm32和51和TSM32的区别,树莓派和jetson nano的区别
  • 如何进行nginx的负载配置
  • 从功能测试进阶自动化测试,熬夜7天整理出这一份3000字超全学习指南
  • [NOIP2011 提高组] 铺地毯
  • mac下ElasticSearch 集群搭建,使用Kibana配置和管理集群
  • 【软件测试】自动化测试的追求,水土不服?看看资深测试咋说的......
  • Mac mini 外接移动硬盘无法显示,磁盘工具装载报错显示 com apple diskmanagement disenter
  • 【图像处理OpenCV(C++版)】——4.6 限制对比度的自适应直方图均衡化
  • 设计模式--工厂模式
  • 算法笔记(十三)—— 树形DP及Morris遍历
  • 【Classical Network】EfficientNetV2
  • 索引类型FULLTEXT、NORMAL、SPATIAL、UNIQUE的区别
  • 稳定、可控、高可用:运维最应该加持哪些技术 buff?
  • 动态网站开发讲课笔记02:Java Web概述
  • 如何保护 IP 地址的隐私问题
  • 高并发系统设计之限流
  • ZCMU--5286: Rose的字符串(C语言)
  • MAC下搭建hadoop