Linux——工具(3)git——版本控制器

一、git的使用意义

在实际项目中,我们往往写一个项目会经历很多个版本进行测试查缺补漏,然后再发行,但如果发行后我们发现仍出现问题,这时我们就需要撤回到上一个版本进行修改,可是如果我们此时不保存上一次的修改就不知道问题所在,因此就需要把每一次的修改详细地记录这样就不怕出错了。git就是一种记录版本控制的工具,它可记录文件的改动内容与改动时间。并且可支持多人同时开发。git的工作方式是将代码库cv到每个开发者的本地,每个人都可以对代码进行修改和提交,然后将新的代码,即新的修改记录更新到代码库中。如今的gitee和github都是基于git实现的。

二、git的版本控制系统的重要性

git备受欢迎的特点之一在于其可以记录各个版本的修改记录,也就说当我们对某个文件进行修改并上传,其他人如果想继续使用其文件就会知道我在何时进行了什么修改,这样就不会一头雾水了。

三、Linux下的git安装

我们以普通用户为例,需要进行提权

sudo yum install -y git

安装后,我们可以检查一下git的版本:git version。如果成功显示了git的版本就说明我们安装成功了。 

四、Linux中git的使用

这里我们需要使用gitee,所以需要先注册一个gitee账号

进入到这个页面后,我们点击右上角的新建仓库

我们输入仓库名字后路径会自动生成。

创建好仓库我们就可以把仓库拷贝到我们的本地了。点击克隆/下载并复制https的网址。

接下来我们进入Linux,输入以下指令

git clone 链接

 即把远端的仓库克隆过来。

成功后,我们就会在当前目录下找到相应的仓库名称,但其实这并不是仓库 ,真正的仓库在该文件夹里有一个叫.git的隐藏文件

我们本地有了仓库之后,就可以将自己写的代码放在此仓库里了。

五、如何把代码提交到仓库

首先我们需要学习几条指令

1.git add

此指令其实并不是把代码放入仓库内,而是放在了一个叫“暂存区”的地方。换句话说,暂存区是我们的代码从工作目录到本地仓库的桥梁。至于如何使用这条指令,我们需要把当前的目录整个导入暂存区,因此我们应输入

git add .

2. git commit

这条指令才能使我们的代码真正的进入仓库内,也就是把暂存区的内容放进本地仓库。

语法为

git commit -m “日志” 

其中日志部分就是我们对修改内容进行的一些注释,用来提醒自己和其他人此次进行修改的内容。 

当我们第一次提交会出现以下界面

意思是需要我们配置以下自己的邮箱和用户名,提交方法为

git config --global user.email "邮箱”

git config --global user.name "用户名”

此时我们再提交一次就可以成功上传至仓库了

 

当然,我们也可以查看仓库中是否有我提交的内容,我们可以用以下方法

git log  ——查看日志

git status ——查看当前状态

注意:日志最好写清楚我们在什么地方进行了修改,不要随意写其他内容。

3. git push

此指令就是把我们在本地仓库中保存的内容更新到远程仓库,使本地和远程保持一致。 同样都是仓库,都具有保存的作用,那么这个远程仓库的存在意义在哪里?其实,本地仓库确实可以对我们本地写的内容进行永久性的保存,但是如果某天你的本地机器出现了故障导致无法使用,那么即使保存我们也无法查看和获取了,这时候远程仓库就起了作用,无论你的本地出现了什么状况,我都可以随时保证你可以查看内容,只需要本地换一台机器然后重新进入仓库即可。

第一次执行指令后会报错

原因是我们并没有指定分支,我们只需要输入图中git config的两条命令中其中一个就可以解决问题了。然后输入你的gitee用户名和密码即可成功上传至远程仓库。以下是上传成功的结果。

六、关于上传文件的一些注意事项

我们建议:在上传至仓库的代码不上传过程文件,这是为了保证仓库的整洁,所以,为了保证我们上传的文件都是有效的,我们的本地仓库有一个隐藏文件.gitignore,凡是以这些为后缀的文件都不允许上传。

此外,我们还要求:我们的仓库要想提交,必须保证本地仓库的内容和远端仓库一致。如果不能做到及时更新就无法上传,这种情况多发生在多人协同上传的时候,不过也有方法,我们只需要用git pull指令就可以把其他人的修改更新到我们的本地仓库中,然后就可以上传了。

————以上就是git的一些基本的操作

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于Python的商品销量的数据分析及推荐系统

一、研究背景及意义 1.1 研究背景 随着电子商务的快速发展,商品销售数据呈现爆炸式增长。这些数据中蕴含着消费者行为、市场趋势、商品关联等有价值的信息。然而,传统的数据分析方法难以处理海量、多源的销售数据,无法满足现代电商的需求。…

对WebSocket做一点简单的理解

1.概念 WebSocket 是基于 TCP 的一种新的网络协议。它实现了浏览器与服务器全双工通信——浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性的连接, 并进行双向数据传输。 HTTP协议和WebSocket协议对比: HTTP是短连接 WebSocke…

【AI深度学习网络】Transformer时代,RNN(循环神经网络)为何仍是时序建模的“秘密武器”?

引言:什么是循环神经网络(RNN)? 循环神经网络(Recurrent Neural Network, RNN) 是一种专门处理序列数据(如文本、语音、时间序列)的深度学习模型。与传统神经网络不同,R…

蓝桥杯备考:图论初解

1:图的定义 我们学了线性表和树的结构,那什么是图呢? 线性表是一个串一个是一对一的结构 树是一对多的,每个结点可以有多个孩子,但只能有一个父亲 而我们今天学的图!就是多对多的结构了 V表示的是图的顶点集…

01 SQl注入基础步骤(数字、字符、布尔盲注、报错)

目录 1、SQL注入漏洞的概要 2、SQL注入的常规思路 3、数字型注入 4、字符型注入 5、布尔盲注 6、报错注入 1、SQL注入漏洞的概要 原理:通过用户输入的数据未严格过滤,将恶意SQL语句拼接到原始查询中,从而操控数据库执行非预期操作。 …

【Linux】基础IO_文件系统基础

【Linux】基础IO_文件系统基础 文件目录 【Linux】基础IO_文件系统基础C语言文件IOC语言文件接口汇总什么是当前路径?默认打开的三个流 系统文件I/Oopenopen的第一个参数open的第二个参数open的第三个参数open的返回值 closewriteread 文件描述符fd文件描述符的分配…

批量删除 Excel 中的空白行、空白列以及空白表格

我们经常会碰到需要删除 Excel 文档表格中的空白行及空白列的场景,有一些空白行或空白列可能我们人工不好识别,因此删除空白行空白列对我们来讲就非常的繁琐,因为我们需要先识别哪些 Excel 文档中包含空白行或者空白列,我们才能够…

硬通货用Deekseek做一个Vue.js组件开发的教程

安装 Node.js 与 Vue CLI‌ npm install -g vue/cli vue create my-vue-project cd my-vue-project npm run serve 通过 Vue CLI 可快速生成项目骨架,默认配置适合新手快速上手 目录结构‌ src/ ├── components/ # 存放组件文件 │ └── …

第七课:Python反爬攻防战:Headers/IP代理与验证码

在爬虫开发过程中,反爬虫机制成为了我们必须面对的挑战。本文将深入探讨Python爬虫中常见的反爬机制,并详细解析如何通过随机User-Agent生成、代理IP池搭建以及验证码识别来应对这些反爬策略。文章将包含完整的示例代码,帮助读者更好地理解和…

OSPF:虚链路

一、虚链路概念 在OSPF中,虚链路(Virtual Link) 是一种逻辑连接,用于解决因网络设计或扩展导致的区域无法直接连接到骨干区域(Area 0)的问题。它是通过中间区域(Transit Area)在两个…

openharmory-鸿蒙生态设备之间文件互传发现、接入认证和文件传输

软件版本 OpenHarmony系统版本基线:基于 OpenHarmony-v5.0.0-Release。 图库应用版本:基于OpenHarmony-v5.0.0-Release。 文件管理器应用版本:基于OpenHarmony-v5.0.0-Release。 7 用户历程图 8 设备发现 8.1 设备交互流程图 8.2 设备发…

Linux系统编程--线程同步

目录 一、前言 二、线程饥饿 三、线程同步 四、条件变量 1、cond 2、条件变量的使用 五、条件变量与互斥锁 一、前言 上篇文章我们讲解了线程互斥的概念,为了防止多个线程同时访问一份临界资源而出问题,我们引入了线程互斥,线程互斥其实…

【HarmonyOS Next】鸿蒙加固方案调研和分析

【HarmonyOS Next】鸿蒙加固方案调研和分析 一、前言 根据鸿蒙应用的上架流程,本地构建app文件后,上架到AGC平台,平台会进行解析。根据鸿蒙系统的特殊设置,仿照IOS的生态闭环方案。只能从AGC应用市场下载app进行安装。这样的流程…

# 深入理解RNN(一):循环神经网络的核心计算机制

深入理解RNN:循环神经网络的核心计算机制 RNN示意图 引言 在自然语言处理、时间序列预测、语音识别等涉及序列数据的领域,循环神经网络(RNN)一直扮演着核心角色。尽管近年来Transformer等架构逐渐成为主流,RNN的基本原理和思想依然对于理…

深度学习实战车道线检测

深度学习实战车道线检测 这里写目录标题 车道线原理整体架构设计核心原理步骤1. 特征提取(骨干网络)2. 特征融合3. 车道线表示与分类4. 损失函数5. 后处理 速度优势的来源 软件实现安装环境与文件说明实验测试 结束语 车道线原理 Lane - Detection是一种…

【redis】五种数据类型和编码方式

文章目录 五种数据类型编码方式stringhashlistsetzset查询内部编码 五种数据类型 字符串:Java 中的 String哈希:Java 中的 HashMap列表:Java 中的 List集合:Java 中的 Set有序集合:除了存 member 之外,还有…

Next.js Server Action 提交 vs 前端 Fetch 提交:核心区别与优劣分析

在使用 Next.js 开发时,开发者经常会面临一个问题:前端的数据提交应该直接 Fetch 调用 API 还是使用 Next.js 提供的 Server Action 提交? 本文将深度解析: ✅ Server Action 提交数据的工作原理✅ 前端 Fetch 提交数据的优缺点…

DeepSeek开启AI办公新模式,WPS/Office集成DeepSeek-R1本地大模型!

从央视到地方媒体,已有多家媒体机构推出AI主播,最近杭州文化广播电视集团的《杭州新闻联播》节目,使用AI主持人进行新闻播报,且做到了0失误率,可见AI正在逐渐取代部分行业和一些重复性的工作,这一现象引发很…

混合存储HDD+SSD机型磁盘阵列,配上SSD缓存功能,性能提升300%

企业日常运行各种文件无处不在,文档、报告、视频、应用数据......面对成千上万的文件,团队之间需要做到无障碍协作,员工能够即时快速访问、共享处理文件。随着业务增长,数字化办公不仅需要大容量,快速高效的文件访问越…

【AI】什么是Embedding向量模型?我们应该如何选择?

我们之前讲的搭建本地知识库,基本都是使用检索增强生成(RAG)技术来搭建,Embedding模型则是RAG的核心,同时也是大模型落地必不可少的技术。那么今天我们就来聊聊Embedding向量模型: 一、Embedding模型是什么? Embedding模型是一种将离散数据(如文本、图像、用户行为等)…