github 终端克隆操作,以及对 https/ssh 的理解

前言

最近瞎搞 github 的一些配置,结果搞得有一段时间克隆不了仓库。不过经历了这次风波后,我对 github 的一些原理有了更清楚的了解。所以想稍微写一小篇文章总结输出一下,也欢迎有疑问的读者与博主进一步交流,我的理解还是有限的哈哈。

主要探讨关于 github 的基础克隆操作的一些配置理解。

克隆

从比较基础的东西讲起吧。克隆仓库是什么?当我们在 github 上看到感兴趣的项目/仓库 repositories 的时候,会想自己把代码扒下来用,或者自己加入这个项目也成为一名开发者(这个操作其实一般需要 fork 自己的一份仓库,涉及一些协作开发的内容吧,这篇文章里不会提到,主要还是讲解对简单的个人项目的一些操作)。这个把项目搞下来的操作就是克隆。

在这里插入图片描述

可能有同学会问,我直接点击 Download ZIP 下一个压缩包到本地岂不是最简洁明了方便的方法吗,这样不就行了吗。其实还是有一点区别的,Download ZIP 下载下来的只是其中的代码部分(当然如果只是想把当前的代码扒下来用而不涉及一些自己的修改提交,这样完全可以),而终端 git clone 操作搞下来的不只有 code,还有版本信息(比如我想切换到该仓库的不同分支,不同版本等),是一个“包含仓库配置信息”的代码仓库,使用管理也更为方便。

Github Desktop 是 Github 提供的一个图形化操作管理界面,我个人没太尝试过hh,和终端操作的 https/ssh 应该是一个效果。但是还是建议大家学习尝试一下 cmd 操作,毕竟比如对于一些服务器等场景,gui 页面并不是一定可以用的。

https 方式相当于:我在本地登录我的 github 账号密码,系统校验后判断我是否有这个权限去使用这个仓库,如果有则允许使用。

ssh 方式相当于:针对本主机配置的一种校验方式,使得在当前主机上不用每次都输入账号密码即可校验身份。具体实现方式如下,非对称加密算法 RSA:

本机生成公钥私钥
公钥交给远程主机
本机需要远程访问时给远程主机发送请求
远程主机随机生成一个字符串用公钥加密 发给本机
本机用私钥成功解密 发回给远程主机
远程主机判断字符串是否成功解密
确认本机身份
确认权限 允许后续操作
身份未知

具体操作方法

http 方式:

  1. 首先需要下载 git,下载后 windows 右键-git bash here 或者 linux cmd 中就可以使用 git 了。
  2. 复制想克隆仓库的地址:选择 https,点击这个键复制:
    在这里插入图片描述
  3. 在终端窗口中输入:git clone 刚才复制的地址 。然后应该输入你的 github 账号密码信息以此校验身份。身份校验后就会显示一个下载的进度信息。
    在这里插入图片描述
  4. 进入文件夹,输入 git status 就可以看到他是一个 Git 仓库的形式,可以进行项目管理,这也是和 Download ZIP 最本质的区别。
    在这里插入图片描述

ssh 连接方式:

  1. 首先在本机上生成 ssh 公钥私钥。ssh-keygen -t rsa -C "xxx@xxx.com" 后面的邮箱是 github 克隆要使用的邮箱账号。然后终端提示信息会先让你输入要生成的密钥的文件路径(建议按回车保持默认并记住),还有生成密钥的一些密文(博主也没使用过,直接按回车即可),最后在目标路径中就生成了公钥和私钥。
  2. 去到生成密钥的路径中,.pub 文件是公钥,没有 .pub 后缀的文件是私钥。我们要把公钥文件中的内容复制粘贴到 github 中,私钥内容万不可泄露。 打开 .pub 文件并复制其中内容。
  3. 在 github-settings-ssh and gpg keys 中添加密钥,密钥名称自取,密钥内容粘贴刚才复制的公钥。
    在这里插入图片描述
  4. 然后克隆仓库的时候可以直接输入 git clone ssh 地址,git 自动校验并完成克隆。

参考文章

Github配置ssh key的步骤(大白话+包含原理解释)

风中一匹狼v
————————————————
版权声明:本文为CSDN博主「风中一匹狼v」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_42310154/article/details/118340458

Git公钥id_rsa.pub的配置

木偶☜
————————————————
版权声明:本文为CSDN博主「木偶☜」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_45096273/article/details/112797298

博主是在自己的实验和理解的基础上部分参考了前辈们的文章。还请大家多多支持原作者~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/139928.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android Studio SDK manager加载packages不全

打开Android Studio里的SDK manager,发现除了已安装的,其他的都不显示。 解决方法: 设置代理: 方便复制> http://mirrors.neusoft.edu.cn/ 重启Android Studio

Uniapp 电子签名 包含 返回 撤回 颜色 线条等功能

请观看 使用教程 第一步 引入图标 在项目中的App.vue内添加下面代码 <style>/*引入图标路径 */import uni_modules/TC-qianming/libs/css/iconfont.css; </style> 第二步 引入组件即可 <template><view><TC-qianming></TC-qianming>&l…

云安全—分布式基础

0x00 前言 云必然是依赖于分布式技术来进行实现的&#xff0c;所以有必要学习和来了解分布式相关的内容 0x01 分布式计算 1.基本概述 分布式计算的定义&#xff1a;通过网络互联的计算机都具有一定的计算能力&#xff0c;他们之间互相传递数据&#xff0c;实现信息共享&…

DH48WK 温控器参数设置

北京东昊力伟科技有限责任公司 温控仪、温度控制器 产品特点&#xff1a; 可外接温度传感器Pt100、Cu50、K、E、J、N、T、R、S、B兼容输入&#xff1b;PID控制输出、位式控制输出、继电器报警输出&#xff1b;控温能满足设定温度值的0.2℃&#xff1b;既可用于加热控制、也可…

如何使用pytorch定义一个多层感知神经网络模型——拓展到所有模型知识

# 导入必要的库 import torch import torch.nn as nn import torch.optim as optim from torch.utils.data import DataLoader, random_split import torchvision.transforms as transforms import torchvision.datasets as datasets# 定义MLP模型 class MLP(nn.Module):def __…

{大厂漏洞 } OA产品存在SQL注入

0x01 漏洞介绍 江苏叁拾叁-OA是由江苏叁拾叁信息技术有限公司开发的一款OA办公平台&#xff0c;主要有知识管理&#xff0c;工作流程&#xff0c;沟通交流&#xff0c;辅助办公&#xff0c;集成解决方案&#xff0c;应用支撑平台&#xff0c;基础支撑等功能。 该系统也与江苏叁…

10-k8s-身份认证与鉴权

文章目录 一、ServiceAccount介绍二、ServiceAccount相关的资源对象三、dashboard空间示例 一、ServiceAccount介绍 ServiceAccount&#xff08;服务账户&#xff09;概念介绍 1&#xff09;ServiceAccount是Kubernetes集群中的一种资源对象&#xff0c;用于为Pod或其他资源提供…

电液比例负载控制变量泵PQ放大器

对驱动执行元件&#xff0c;仅供应所需最小限度的压力、流量的节能型泵控制系统。与专用功率放大器配合使用。流量和全截流压力按功率放大器的输入电流成比例地进行控制。在实际应用中&#xff0c;该控制系统与专用功率放大器配合使用&#xff0c;可以根据实际需求&#xff0c;…

排查手机应用app微信登录问题不跳转失败原因汇总及其解决方案

经过最近我发的文章,我个人觉得解决了不少小问题,因为最近很小白的问题已经没有人私聊问我了,我总结了一下排查手机应用app微信登录问题不跳转失败的原因汇总及其解决方案在这篇文章中,分析微信登录不跳转的原因,并提供解决方案。希望通过这篇文章,能够帮助大家顺利解决这…

基于晶体结构优化的BP神经网络(分类应用) - 附代码

基于晶体结构优化的BP神经网络&#xff08;分类应用&#xff09; - 附代码 文章目录 基于晶体结构优化的BP神经网络&#xff08;分类应用&#xff09; - 附代码1.鸢尾花iris数据介绍2.数据集整理3.晶体结构优化BP神经网络3.1 BP神经网络参数设置3.2 晶体结构算法应用 4.测试结果…

vue.js - 断开发送的请求,解决接口重复请求数据错误问题(vue中axios多次相同请求中断上一个)

描述 进入页面时第一个接口还在请求,立即切换tab请求第二个接口。但是第二个接口响应比第一个接口响应快,页面展示的时第一个接口的数据,如图: 解决方法 判断如果是相同的接

MySQL双主一从高可用

MySQL双主一从高可用 文章目录 MySQL双主一从高可用环境说明1.配置前的准备工作2.配置yum源 1.在部署NFS服务2.安装主数据库的数据库服务&#xff0c;并挂载nfs3.初始化数据库4.配置两台master主机数据库5.配置m1和m2成为主数据库6.安装、配置keepalived7.安装部署从数据库8.测…