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

新人使用Git获取远程仓库项目

前言

这篇git技术篇非常的简单基础,写它的原因很简单,因为现在很多的年轻人都很浮躁,刚入门就想学最牛x的,看不起基础的一些技术,比如说git操作、Linux基础命令,编程基础啥的。我身边有很多这样的年轻人,整天大数据ChatGPT,人工智能啥的,不注重基础能力的培养。拿网上的例子改一改就觉得自己掌握了这项技术,曾经我年轻的时候也是这样的,但后果很严重,中间吃了很多苦,在公司因为基础不扎实,提交的代码线上有问题导致出问题被技术老大疯狂吼,特别丢人。不过领导后面一点点的纠正了我的错误,并告诉我要注重基础知识能力的培养。我现在仍然非常感谢这位领导,但是不是每个人都有机会遇到好领导的。新入行的小萌新一定要戒娇戒躁,好好学习基础。

操作过程演示

1. 配置git

当我们下载安装完git工具后,接下来要做的就是配置,也就是将你的用户名和邮箱配置到git中,后面需要使用你的邮箱生成ssh key (一种加密的key,后面会介绍),你后面提交代码啥的会显示你的用户名称,其他人可以通过Git的git log命令看到你的代码提交记录,如下所示:
在这里插入图片描述接下来让我们看下如何配置用户名和邮箱:

当你把git工具安装好后,打开git工具,在windows中打开方式可以有3种,Mac和Linux中直接在命令行操作就行了)第一种是点击桌面的图标,打开git的命令行,
第二种是直接在“开始”菜单中

在这里插入图片描述

第三种是随便找一个文件夹,然后点击鼠标右键

在这里插入图片描述
然后配置上用户名和邮箱,在前面的文章中讲过配置,这里就不讲了
在这里插入图片描述

2.生成以及查看SSH Key

配置好用户名和邮箱后我们就可以生成ssh-key了,这个ssh-key就是一种加密的密钥,加密方式分为对称加密和非对称加密,对称加密就是加密和解密使用的是一个密钥,就比如我们传递信息的时候,为了防止信息被其他人偷窥,我们就使用密钥对信息进行加密,这个密钥可能是一串数字或者是其他符号等,接收者收到后就用我们给他的密钥解密,但是必须要和我们加密的一样才能解开原文。非对称加密是我们发送和接收信息的人都有一个公钥和私钥,私钥我们各自保存,使用公钥加密,只能使用对应的私钥解密,然后我们将自己的公钥发送给对方,这个公钥被谁获取了都无所谓,然后我们要传递信息的时候就使用对方的公钥加密,这样收到信息的是就可以用自己的私钥解密了。git用的就是非对称加密的方法。我们看下如何生成公钥和私钥

使用命令:ssh-keygen -t rsa -C "你配置的邮箱"然后一直按回车键(键盘上的enter键)就行了
在这里插入图片描述我的是已经生成过了,所以会显示图中的内容

3.获取远程仓库代码

在上一步我们生成了ssh-key,接下来就是看下如何去使用它,我们可以通过命令cat ~/.ssh/id_rsa.pub 查看公钥
在这里插入图片描述也可以找到我们的系统C盘用户目录下找到你的登录用户名下的.ssh文件夹下的id_rsa.pub文件使用记事本打开就能看到生成的ssh-key的公钥信息了,后面我们会将它配置到远程仓库上。这样才能和远程仓库建立通信连接,然后下载到远程仓库的代码
在这里插入图片描述我们以github为例,其实远程仓库如gitlab,gerrt都是大同小异的,打开你的github后点击你的头像在弹出的选项中选择settings
在这里插入图片描述
点击settings后会跳转到下面的界面中:点击"New SSH key"新增加一个key,然后把你电脑里面生成的公钥(id_rsa.pub)中的内容全部复制过来,保存就行了
在这里插入图片描述接下来就可以愉快的使用git clone 命令克隆复制代码了
在这里插入图片描述

总结

本文主要介绍了如何配置用户名和邮箱,然后生成ssh-key去远程仓库上克隆代码,文章很简单,但是我想传递的意思是不要忽视任何简单的东西,不管有多简单,我们都要动手去实践下,养成一种严谨的理论和实践相结合的习惯。千万不要养成坏习惯,否则真的很难改掉的。


http://www.kler.cn/a/3391.html

相关文章:

  • 计算机网络之运输层
  • [论文阅读] (36)CS22 MPSAutodetect:基于自编码器的恶意Powershell脚本检测模型
  • XX污水处理厂基于RK3576核心板应用(四)——人员倒地智能识别系统方案
  • 当使用 npm 时,出现 `certificate has expired` 错误通常意味着请求的证书已过期。
  • 全面解析计算机网络:从局域网基础到以太网交换机!!!
  • 数学规划问题2 .有代码(非线性规划模型,最大最小化模型,多目标规划模型)
  • Html5版飞机大战游戏中(Boss战)制作
  • 你的应用太慢了,给我司带来了巨额损失,该怎么办
  • 【Python入门第三十六天】Python丨文件写入
  • 【蓝桥杯嵌入式】第十三届蓝桥杯嵌入式国赛客观题以及详细题解
  • 使用C++编写一个AVL的增删改查代码并附上代码解释
  • Java_Spring:3. IoC 的概念和作用-程序的耦合和解耦
  • c#文案语音配图片一键生成视频
  • 【设计模式-工厂方法】想象力和创造力:你考虑过自动化实现工厂吗?
  • 建堆、堆排序、TopK问题大合集
  • 一文让你吃透 Vue3中的组件间通讯 【一篇通】
  • 【Docker】Compose容器编排LNMP上云
  • IO流你了解多少
  • springboot校友社交系统
  • 机器学习之图像处理——基本概念知识介绍
  • python+appium+pytest自动化测试-参数化设置
  • Qt之实现类似软件安装时的新功能介绍界面
  • Jetson Nano驱动机器人的左右两路电机
  • 安全防御 --- 防火墙
  • 代码随想录算法训练营第五十三天 | 1143.最长公共子序列 1035.不相交的线 53. 最大子序和 动态规划
  • python变量内存管理