【git原理与使用】git初识与安装

文章目录

  • [1. 提出问题](#1. 提出问题)
  • [2. 解决方法------版本控制器](#2. 解决方法——版本控制器)
  • [3. git安装](#3. git安装)

之前Linux系统编程专栏中,我们通过一篇文章简单介绍过git的基本使用,本专栏我们将来正式全面深入地学习git,本专栏目标:

掌握 Git 企业级应用,深刻理解Git操作过程与操作原理,理解工作区,暂存区,版本库的含义
• 技术目标: 掌握 Git 版本管理,自由进行版本回退、撤销、修改等Git操作方式与背后操作原理
• 技术目标: 掌握 Git 分支管理,从分支创建,切换,合并,删除的整个生命周期,灵活进行各种场景下的分支管理,学习常见分支管理策略
• 技术目标: 掌握 Git 远程仓库与本地仓库,结合版本管理与分支管理,做到基于分支级的个人级开发
• 技术目标: 理解分布式版本控制系统,学习远程仓库与本地仓库的交互操作,掌握多人协作开发模式
• 协作目标:学习企业级常见分支策略(master/release/develop/feature/hotfix等),理解不同公
司,不同环境下适合的分支模型。结合案例,引入工程师,测试人员,技术经理等角色,展现项目开发过程的全貌,深刻理解开发的整体流程,俯视Git在其中的作用

1. 提出问题

不知道你工作或学习时,有没有遇到这样的情况:

比如在学校给老师交实验报告或者论文,你第一次交上去,老师说不行,你再修改修改;然后你把修改之后的第二个版本交上去,老师说还有一些小问题,再去修改;然后你又修改,修改之后把第三个版本交上去;老师看了看说,怎么越改越差了,再去修改;你又改了改,然后拿着第四个版本交上去,老师一看说:不行啊,时间快截止了,我看你第二次写的还差不多,要不你把第二次写的交上来吧。

这时,如果你每次都是直接修改,没有保存之前的旧版本,那你就难办了,第二个版本,这可怎么找啊!

有了这次的经验教训,下次编写各种文档时,为了防止文档丢失,更改失误,失误后能恢复到原来的版本,你不得不复制出一个副本,比如:

"报告-v1"

"报告-v2"

"报告-v3"

"报告-确定版"

"报告-最终版"

"报告-究极进化版"

...

每个版本有各自的内容,但最终会只有一份报告需要被我们使用 。

但在此之前的工作都需要这些不同版本的报告,于是每次都是复制粘贴副本,产出的文件就越来越多,文件多不是问题

问题是:随着版本数量的不断增多,你还记得这些版本各自都是修改了什么吗?

文档如此,我们写的项目代码,亦然!!

2. 解决方法------版本控制器

因为有上面这些问题的存在,所以版本控制器就诞生了:

为了能够更方便我们管理这些不同版本的文件,便有了版本控制器。
所谓的版本控制器,就是能让你了解到一个文件的历史,以及它的发展过程的系统 。
通俗的讲就是一个可以记录工程的每一次改动和版本迭代的一个管理系统,同时也方便多人协同作业。
目前最主流的版本控制器就是 Git 。
Git 可以控制电脑上所有格式的文件,例如 doc、excel、dwg、dgn、rvt等等。对于我们开发人员来说,Git 最重要的就是可以帮助我们管理软件开发项目中的源代码文件

注意事项

还需要再明确一点,所有的版本控制系统,Git 也不例外,其实只能跟踪文本文件的改动 ,比如TXT 文件,所有的程序代码等等。版本控制系统可以告诉你每次的改动,比如在第5行加了一个单词"Linux",在第8行删了一个单词 "Windows"。
而图片、视频这些二进制文件,虽然也能由版本控制系统管理,但没法跟踪文件的变化,只能把二进制文件每次改动串起来,也就是只知道图片从100KB改成了120KB,但到底改了啥,版本控制系统不知道,也没法知道。

3. git安装

bash 复制代码
# 1. 更新软件包索引
sudo apt update

# 2. 安装 git
sudo apt install git -y

# 3. 验证安装
git --version

能查到版本号,就是安装成功了。

相关推荐
TDengine (老段)6 小时前
TDengine IDMP 十大实用功能(3)
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
实验室管理云平台6 小时前
面向高职院校实训场景:实训实验室管理平台整体方案分享
大数据·科技·物联网·自动化
试剂界的爱马仕7 小时前
α-Cyano-4-hydroxycinnamic acid(CHCA)用作 MALDI-TOF 基质的配制与使用
大数据·人工智能·深度学习·学习
liliangcsdn7 小时前
涨幅来源盈利估值分解探索
大数据
深圳市益普科技有限公司8 小时前
半导体SPC工具怎么选?从控制图算法到落地架构的对比
大数据·人工智能·架构
演艺大赏8 小时前
Doris 2.1.11 BE 多节点异常掉线:AutoReleaseClosure callback reuse 数据竞争与 std::bad_alloc 双
大数据
小蒋观天下8 小时前
网络抖动、乱序、丢包:UDP/RTSP/TCP对AI抓拍、轨迹跟踪的不同影响
大数据·人工智能·深度学习
super_Omni8 小时前
Chrome 插件入驻实战:从 Manifest V3 到过审上架的完整路径
大数据·前端·chrome