深入了解Linux —— git三板斧

版本控制器git

为了我们方便管理不同版本的文件,就有了版本控制器;

所谓的版本控制器,就是能够了解到一个文件的历史记录(修改记录);简单来说就是记录每一次的改动和版本迭代的一个管理系统,同时也方了多人进行协作。

当前应用最广泛的版本控制器就是gitgit可以控制电脑上所有格式的文件。

之前我们在windows下使用git来管理自己的本地文件,并上传至gitee

git简史

​ 同生活中的许多伟大事物一样,Git 诞生于一个极富纷争大举创新的年代。Linux 内核开源项目有着为数众多的参与者。绝大多数的Linux 内核维护工作都花在了提交补丁和保存归档的繁琐事务上(1991-2002年间)。到2002年,整个项目组开始启用一个专有的分布式版本控制系统 BitKeeper 来管理和维护代码。

到了 2005 年,开发 BitKeeper 的商业公司同 Linux 内核开源社区的合作关系结束,他们收回了 Linux内核社区免费使用 BitKeeper 的权力。这就迫使 Linux 开源社区(特别是 Linux 的缔造者 LinusTorvalds)基于使用 BitKeeper 时的经验教训,开发出自己的版本系统。他们对新的系统制订了若干目标:

  • 速度。
  • 简单的设计。
  • 对非线性开发模式的强力支持(允许成千上万个并行开发的分支)。
  • 完全分布式。
  • 有能力高效管理类似 Linux 内核一样的超大规模项目(速度和数据量)。

自诞生于 2005 年以来,Git 日臻成熟完善,在高度易用的同时,仍然保留着初期设定的目标。 它的速度飞快,极其适合管理大项目,有着令人难以置信的非线性分支管理系统。

那我们在linux下该如何使用git来管理文件呢?

git三板斧

在使用之前,当然要先进行安装git

yum install git

ubanto下使用

sudo apt-get update

在进行管理之前,我们要登录gitee官网注册属于自己的账号https://gitee.com

gitee创建仓库并克隆到本地

在注册完成账号之后,我们的账号下是没有任何仓库的;我们要先进行创建仓库,并且将仓库克隆到自己的本地来管理自己的文件。

创建仓库:

在注册完成账号后,来到个人主页,点击右上角头像旁边的+,点击创建仓库,进入创建仓库的界面。

在这里插入图片描述

进入到以下界面

在这里插入图片描述

这里填写一下仓库信息

仓库名称:为自己的仓库起个名字

仓库介绍:简单介绍自己的仓库

初始化仓库:初始化语言,模版(gitignore),开源许可证

设置模版:选择readme文件(可以编辑该文件,帮助读者快速了解自己的仓库内容。

分支模型:这里选择单分支模型(根据自己需求选择)。

创建完成就进入了以下界面;(可以看到readme文件,我们克隆到本地后可以进行修改)。

在这里插入图片描述

创建完成之后,我们将这个仓库,克隆到本地

  1. 点击上图中的克隆/下载,获取当前仓库地址

在这里插入图片描述

点击之后,有上述提示,我们只需要在本地执行即可。

git clone https://gitee.com/lxb0720/test_linux.git

在这里插入图片描述

如上图所示,就成功将仓库克隆到本地了,我们现在就可以看到仓库里的内容了

在这里插入图片描述

1. git add

git add,我们在windows下,直接点击,选择要添加的文件即可;

但是在linux下,我们不能像windows那样选择要添加的文件,所以我们要告知我们要上传的文件就行上传。

在这里插入图片描述

2. git commit

当我们git add之后,文件只是上传到了暂存区,并没有被管理起来;

我们要执行git commit将暂存区的文件上传到本地仓库,让文件被管理起来。

git commit -m "描述信息"

这里推荐加上-m选项,并且加上描述信息,就像写日志那样。

在这里插入图片描述

3. git push

通过git commit,我们已经将文件在本地仓库管理起来;但是,这些文件还并没有同步到远端;我们在gitee上还是无法看到这些文件。

git push就是件本地仓库内容同步到远端。

在这里插入图片描述

在执行git push之后,需要我们输入gitee的用户名和密码才能上传成功。

4. 首次使用git

如果第一次使用git上传文件,需要我们配置运行用户名和邮箱;在我们点击克隆/下载时,就有提示

在这里插入图片描述

直接指向下面指令即可。

git config --global user.name '用户名' 
git config --global user.email '邮箱'

git其他操作

git status

对于git status,这个操作的作用就是查看当前的状态;

说简单一点就是看现在进行了哪一步操作。

在这里插入图片描述

这里再看git commit后的状态

在这里插入图片描述

这里执行git push后,再次来查看

在这里插入图片描述

git log

我们使用git来管理我们的文件,那如果我们想要查看我们提交上传的记录,就要用到git log

在这里插入图片描述

这里就可以看到我们的提交用户和日期以及提交的日志信息

git pull

在了解这个指令之前,我们先来看git是如何管理并同步到远端的。

在这里插入图片描述

看到这里可能有疑惑,本地文件夹和本地仓库不一样吗?

肯定是不一样的,在我们将远端仓库克隆到本地文件夹时,我们该目录下是存在一个.git隐藏文件的

在这里插入图片描述

我们看到还存在一个gitigonre文件,那这个文件是干什么的呢?

这里就直接说了

.gitignore文件是在我们上传文件时,需要忽视的文件名后缀。

什么意思呢?

在这里插入图片描述

这里.gitinore文件中存在多种文件名的后缀,这里就看.o

我们在编译时可能会产生临时文件.o,但是我们不希望将这个临时文件上传,这时gitignore文件中有.o,在上传的时候就会忽略.o,不会将其上传。

到这里git简单操作就结束了,后期深入学习git之后再来详细探讨git

我的博客即将同步至腾讯云开发者社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=2oul0hvapjsws

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

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

相关文章

笔记本电脑关不了机是怎么回事 这有解决方法

在快节奏的现代生活中,笔记本电脑已成为我们工作、学习和娱乐的得力助手。在使用电脑的过程中,笔记本电脑突然关不了机了,怎么回事?下面驱动人生就来讲一讲笔记本电脑不能正常关机的解决方法,有需要的可以来看看。 一、…

Unity打包的WebGL包打不开问题解决方案,以及WebGL包嵌入至Vue2中的步骤

问题描述 在做项目时,需要将Unity做出的场景与Vue2结合,遇到了一些问题,在网上搜了很多解决方案,最终根据下面这篇博客的内容成功解决。解决方案 https://blog.csdn.net/m0_56308072/article/details/135502566注意事项 &#xff…

TW-SOA中的ASE:建模和实验

----翻译自G. Talli , M.J. Adams于2003年发表的论文 摘要 我们提出了一个行波半导体光放大器 (TW-SOA) 中放大自发辐射 (ASE) 的模型。所提出的模型考虑了整个 ASE 频谱的传播,还考虑了信号和 ASE 引起的饱和效应。使…

AI编程方法案例:PageRank算法实现

一、算法简单说明 PageRank算法是一种常见的网络权值迭代算法,主要用于诸如互联网网页的质量测度。基本计算原理是根据网页自身的链出将原始权值进行扩散,并通过多轮迭代获得稳定的收敛值来表征网页自身的最终权值。基本计算公式为: 其中R(u…

基于香橙派 KunpengPro学习CANN(3)——pytorch 模型迁移

通用模型迁移适配可以分为四个阶段:迁移分析、迁移适配、精度调试与性能调优。 迁移分析 迁移支持度分析: 准备NPU环境,获取模型的源码、权重和数据集等文件;使用迁移分析工具采集目标网络中的模型/算子清单,识别第三方…

Docker和containerd之概览(Overview of Docker and Containerd)

Docker和containerd之概览 容器本质上就是一个进程。 Namespace是一种逻辑分组机制,允许您将集群资源划分为独立的虚拟环境。每个 Namespace 为资源提供了一个范围,使得不同的团队、应用程序或环境可以在同一集群中共存,而不会相互干扰。 C…

使用OBS进行webRTC推流参考

参考腾讯云官方文档: 云直播 OBS WebRTC 推流_腾讯云 说明非常详细,分为通过WHIP和OBS插件的形式进行推流。 注意:通过OBS插件的形式进行推流需要使用较低的版本,文档里有说明,需要仔细阅读。

荣耀手机卸载应用商店、快应用中心等系统自带的

1.下载abd ADB Download - Get the latest version of ADB and fastboot 2.手机打开开发者选项 3.手机接电脑打开USB调试 4.下载MT管理器查看系统包名 D:\1.LFD\ADB\platform-tools-latest-windows\platform-tools>adb shell adb.exe: no devices/emulators found 这边是…

奇安信全流量(天眼)面试题

一、全流量设备(天眼)的部署架构 天眼系统采用旁路部署模式,通过流量镜像实现非侵入式监测,核心组件包括流量传感器、分析平台和文件威胁鉴定器,具体部署架构如下: 传感器部署 关键节点覆盖:在…

angular中的路由传参

目录 一、矩阵参数 一、矩阵参数 在angular中传参时可以使用矩阵参数,即直接通过变量值的形式在地址中体现,但需要注意参数的使用范围为当前路径段,而不是全局的查询参数。 const params {name: lhhh,age: 18,list: [{ name: htt }],}; //先…

设计模式(创建型)-抽象工厂模式

摘要 在软件开发的复杂世界中,设计模式作为解决常见问题的最佳实践方案,一直扮演着至关重要的角色。抽象工厂模式,作为一种强大的创建型设计模式,在处理创建一系列或相关依赖对象的场景时,展现出了独特的优势和灵活性。它通过提供一个创建对象的接口,让开发者能够在不指定…

从Excel到搭贝的转变过程

从Excel到搭贝 1. 简介 1.1 Excel简介 Excel 作为元老级的数据管理工具,功能强大且被广泛使用,但在现代工作场景中仍存在一些局限性,例如: 数据量处理有限:处理大规模数据时,Excel可能运行缓慢或崩溃。…

Text-to-SQL将自然语言转换为数据库查询语句

有关Text-To-SQL方法,可以查阅我的另一篇文章,Text-to-SQL方法研究 直接与数据库对话-text2sql Text2sql就是把文本转换为sql语言,这段时间公司有这方面的需求,调研了一下市面上text2sql的方法,比如阿里的Chat2DB,麻…

MFC开发:图形的绘制

文章目录 一、获取指定窗口的设备上下文二、画笔的介绍和使用三、绘制直线四、画刷的介绍和使用五、绘制扇形六、绘制圆形七、绘制文本 一、获取指定窗口的设备上下文 1.GetDC()函数的作用 GetDC() 是 Windows API 中的一个函数,它用于获取指定窗口的设备上下文&am…

SPI 总线协议

1、协议介绍 SPI,是英语 Serial Peripheral interface 的缩写,顾名思义就是串行外围设备接口。是 Motorola 首先在其 MC68HCXX 系列处理器上定义的。 SPI,是一种高速的,全双工,同步的通信总线。主节点或子节点的数据在…

Qt msvc程序运行

第一个Qt msvc程序 我们一般用qt msvc来编译程序&#xff0c;就是用webview。 第一个Qt msvc webview程序实现如下&#xff1a; 运行结果&#xff1a; 标注&#xff1a; QT版本大于6.0的时候才能用<Webview>模块。 QT版本在大于5.2版本&#xff0c;引入了Webengine模…

Java设计模式建模语言面向对象设计原则

设计模式 设计模式的概念 设计模式最初用于建筑领域的设计中。 软件的设计模式&#xff0c;又称设计模式&#xff0c;是一套被反复使用&#xff0c;多数人知道的&#xff0c;经过分类编目的&#xff0c;代码设计经验的总结。 它描述了在软件设计过程中的一些不断重复发生的…

搜广推校招面经五十四

美团推荐算法 一、手撕Transformer的位置编码 1.1. 位置编码的作用 Transformer 模型没有显式的序列信息&#xff08;如 RNN 的循环结构&#xff09;&#xff0c;因此需要通过位置编码&#xff08;Positional Encoding&#xff09;为输入序列中的每个位置添加位置信息。位置…

深入解析 SQL 事务:确保数据一致性的关键

SQL 事务 什么是 SQL 事务&#xff1f;事务的 ACID 特性原子性&#xff08;Atomicity&#xff09;:示例&#xff1a; 一致性&#xff08;Consistency&#xff09;:示例&#xff1a; 隔离性&#xff08;Isolation&#xff09;:持久性&#xff08;Durability&#xff09;:示例&am…

【软考-架构】11.3、设计模式-新

✨资料&文章更新✨ GitHub地址&#xff1a;https://github.com/tyronczt/system_architect 文章目录 项目中的应用设计模式创建型设计模式结构型设计模式行为型设计模式 &#x1f4af;考试真题题外话 项目中的应用 在实际项目中&#xff0c;我应用过多种设计模式来解决不同…