初次认识 Git (v2.x)

发布时间 2023-12-22 11:07:18作者: 上古南城

什么是版本控制?

  • 版本控制,也称为源代码控制,是一种跟踪和管理软件代码变更的实践。版本控制系统是软件工具,可帮助软件团队管理源代码随时间推移而发生的变更。随着开发环境的加速,版本控制系统可以帮助软件团队更快、更智能地工作。它们对于 DevOps 团队特别有用,因为它们可以帮助该团队缩短开发时间并提高部署成功率。

  • 版本控制软件在特殊类型的数据库中跟踪对代码的每一次修改。如果犯了错误,开发人员可以回退并比较代码的早期版本,以帮助修复错误,同时最大限度地减少对所有团队成员的干扰。

优势:

  • 每个文件的完整长期变更历史记录。
  • 分支和合并。
  • 可追溯性。

概述 Git 基础知识

  • Git 是一个免费的开源版本控制系统,采用分布式架构,最初由 Linus Torvalds 于 2005 年创建。与早期的集中版本控制系统(比如 SVN 和 CVS)不同,Git 是分布式的:每个开发人员在本地都有代码库的完整历史记录。虽然这会使得代码库的初始克隆速度变慢,但会显著加快后续操作(比如提交、找错、比对、合并和日志记录)的速度。

  • Git 还为创建代码库历史记录分支以及合并和重写代码库历史记录提供卓越的支持,这已经带来了许多创新且功能强大的工作流和工具。拉取请求就是此类受欢迎的工具之一,它使团队能够在 Git 分支上进行协作,并有效地检查彼此的代码。Git 是当今世界使用最广泛的版本控制系统,被视为现代软件开发标准。

Git 的工作原理

以下是对 Git 工作原理的基本概述:

  • 使用 Git 托管工具(比如 Bitbucket)创建“仓库”(项目)
  • 将 Git 仓库复制(或克隆)到本地计算机
  • 向本地仓库添加文件,然后“提交”(保存)更改
  • 将变更“推送”到主分支
  • 使用 Git 托管工具更改文件,并提交
  • 将更改“拉取”到本地计算机
  • 创建“分支”(版本),进行更改,提交更改
  • 打开“拉取请求”(建议对主分支进行变更)
  • 将您的分支“合并”到主分支

安装 Git

准备环境

[root@GitServer ~]# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
[root@GitServer ~]# uname -r
3.10.0-1160.el7.x86_64
 
[root@GitServer ~]# setenforce 0
[root@GitServer ~]# sed -i.bak '7s/enforcing/disabled/' /etc/selinux/config
 
[root@GitServer ~]# systemctl stop firewalld
[root@GitServer ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:firewalld(1)
[root@GitServer ~]# firewall-cmd --state
not running

YUM安装

# 系统默认版本
[root@GitServer ~]# yum install git
[root@GitServer ~]# git --version
git version 1.8.3.1

# 安装最新版本Git
[root@GitServer ~]#yum install https://packages.endpointdev.com/rhel/7/os/x86_64/endpoint-repo.x86_64.rpm
[root@GitServer ~]# yum install git
[root@GitServer ~]# git --version
git version 2.41.0

编译安装

# 移除旧版本
[root@GitServer ~]# yum remove git
[root@GitServer ~]# yum remove git-*

[root@GitServer ~]# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker

# 下载源码
# 这里可以替换成我们想要下载的版本,只需将v2.34.1 改成对应的版本号即可,具体版本可以看 git 代码库中的tags:
[root@GitServer ~]# export VERSION="2.34.1"
[root@GitServer ~]# wget https://github.com/git/git/archive/v${VERSION}.tar.gz

# 编译安装
[root@GitServer ~]# tar -xvf v2.34.1.tar.gz
[root@GitServer ~]# cd git-2.34.1
[root@GitServer git-2.34.1]# make configure        # 若报错,则执行 yum install autoconf automake -y
[root@GitServer git-2.34.1]# ./configure --prefix=/usr/local/git/
[root@GitServer git-2.34.1]# make && make install

# 设置环境变量
[root@GitServer ~]# echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/profile.d/git.sh
[root@GitServer ~]# source /etc/profile.d/git.sh

[root@GitServer ~]# git --version
git version 2.34.1

Git 命令思维导图