【Git】《Git 系列指南(一):初识Git和安装Git配置》

一.初识Git

不知道你在工作或学习中,是否遇到过这样的场景:为了不让文档丢失,或者改错后能恢复,我们常常被迫复制出一大堆副本,比如:

  • "报告-v1"

  • "报告-v2"

  • "报告-v3"

  • "报告-最终版"

  • "报告-打死也不改版"

每个版本都有各自的内容,但最终我们只需要其中一份。然而在这之前,为了保留这些历史版本,我们不得不复制粘贴,产出的文件越来越多。文件多不是问题,真正让人头疼的是:随着版本数量的不断增多,你还记得这些版本各自都修改了什么吗?

文档如此,我们写的项目代码同样存在这个问题!为了解决这一痛点,版本控制系统 应运而生。它能让你完整了解一个文件的历史变更过程,记录工程的每一次改动和版本迭代,同时也方便多人协同作业。目前最主流的版本控制系统就是 Git。

关于 Git 的能力,有一点需要注意: 所有的版本控制系统(包括 Git)只能完美地跟踪 纯文本文件 的改动,比如源代码、TXT 文档、网页文件等。因为文本文件是有编码结构的,Git 可以精确地告诉你第几行加了一个单词,第几行删了一个字符。而图片、视频、Word 文档等二进制文件虽然 Git 也能管理,但无法逐行比对差异,只能记录文件从一个版本到另一个版本的整体变化(比如从 100KB 变成 120KB),至于具体改了哪里,Git 是没办法知道的。

对于开发人员来说,我们日常编写的大部分代码都是文本文件,所以 Git 完全能够胜任我们的核心需求。


二.Git 安装

Git 是一个开源的分布式版本控制系统,它的诞生源于 Linux 内核开发团队的一段"恩怨"。2005 年,因 BitKeeper(当时 Linux 内核使用的版本控制软件)收回免费使用授权,Linux 之父 Linus Torvalds 一怒之下花了两周时间写出了 Git。起初 Git 只能在 Linux 平台运行,随后在社区贡献者的努力下逐步完成了对 Windows 等平台的移植。如今,Git 已全面支持 Linux、Unix、macOS 和 Windows 各大平台,成为全球开发者最信赖的版本控制工具。

Linux-centos

如果平台是centos,安装git相当简单,以centos7.6为例:

⾸先,你可以试着输⼊Git,看看系统有没有安装Git:

出现像上⾯的结果,Linux会友好地告诉你Git没有安装。

安装 Git:

cpp 复制代码
 sudo yum -y install git

我用的是linux版本:

如果你的的平台是ubuntu,安装git相当简单,以我的ubuntu22.04为例:

⾸先,你可以试着输⼊git,看看系统有没有安装Git:

cpp 复制代码
$ git
Command 'git' not found, but can be installed with://这个是没有安装的情况
//这个是安装的指令
sudo apt install git

出现像上⾯的结果,Linux会友好地告诉你Git没有安装。

我已经安装过了所以我会显示一下内容:


接下来我删掉我安装的重新安装演示一遍:

2.1删除Git

bash 复制代码
sudo apt-get remove git -y

2.2安装Git

cpp 复制代码
 $ sudo apt-get install git -y

这里就已经显示安装成功了


2.3查看 git 安装的版本:

cpp 复制代码
$ git --version

三.windows

如果你是Windows那么用下面的链接进行

参考链接:

https://www.bilibili.com/video/BV1hf4y1W7yT?p=3&vd_source=b57c3f3e8a7507d4af7322c28f05fdbc

相关推荐
buhuizhiyuci3 分钟前
【Linux 篇】数字世界的水流蓄水池 —— IO 缓冲区机制深度实战解析
linux·运维·服务器·c++
贝锐7 分钟前
多校区互通、临时联网、远程运维,校园网络升级用蒲公英更省心!
运维·组网
10mAh14 分钟前
【Git】误删分支、reset --hard 后提交丢了怎么办?——reflog、fsck 与安全恢复实战
数据库·git·安全·回归
游戏开发爱好者835 分钟前
App Store 上传 IPA 自动化,.p8 密钥认证与 CI/CD 接入实战
android·运维·ci/cd·小程序·uni-app·自动化·iphone
天疆说43 分钟前
04 稳定性与性能调优实录:OOM 崩溃、并发槽位、前缀缓存与 DSpark 调参
linux·运维·缓存
微硬创新43 分钟前
大点数模拟量采集落地:耐达讯自动化32路0-20mA适配PROFINET总线实践解析
运维·人工智能·网络协议·自动化·信息与通信
GIS数据转换器1 小时前
村镇无人机物流配送与跨域监测一体化平台
大数据·运维·人工智能·科技·无人机
倔强的石头1062 小时前
飞牛OS部署Mtab:Docker搭建自托管书签导航并实现远程访问
运维·docker·容器
Lydro2 小时前
CentOS 7 安装高版本git
git·centos 7
guwentian11 小时前
Git Worktree 实战:用并行多 Agent 把开发提速 N 倍
大数据·git·elasticsearch·wroktree