什么是版本控制?

  • 版本控制,也称为源代码控制,是一种跟踪和管理软件代码变更的实践。版本控制系统是软件工具,可帮助软件团队管理源代码随时间推移而发生的变更。随着开发环境的加速,版本控制系统可以帮助软件团队更快、更智能地工作。它们对于 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 命令思维导图

初次认识 Git (v2.x)的更多相关文章

  1. 初次运行git时的配置

    初次运行git时的配置 # 参考文档 https://git-scm.com/book/zh/v2/%E8%B5%B7%E6%AD%A5-%E5%88%9D%E6%AC%A1%E8%BF%90%E8% ...

  2. 【转】1.5 起步 - 初次运行 Git 前的配置

    原文网址:http://git-scm.com/book/zh/v1/%E8%B5%B7%E6%AD%A5-%E5%88%9D%E6%AC%A1%E8%BF%90%E8%A1%8C-Git-%E5%8 ...

  3. 初次运行 Git 前的配置

    初次运行 Git 前的配置 一般在新的系统上,我们都需要先配置下自己的 Git 工作环境.配置工作只需一次,以后升级时还会沿用现在的配置.当然,如果需要,你随时可以用相同的命令修改已有的配置. Git ...

  4. Git起步--git安装与初次运行git前配置

    在你开始使用 Git 前,需要将它安装在你的计算机上. 即便已经安装,最好将它升级到最新的版本. 你可以通过软件包或者其它安装程序来安装,或者下载源码编译安装. 一.Git安装 1. 在linux上安 ...

  5. 初次使用git配置以及git如何使用ssh密钥(将ssh密钥添加到github)

    初次安装git配置用户名和邮箱 初次安装git需要配置用户名和邮箱,否则git会提示:please tell me who you are. 你需要运行命令来配置你的用户名和邮箱: $ git con ...

  6. 初次安装git配置用户名和邮箱

    初次安装git配置用户名和邮箱 初次安装git需要配置用户名和邮箱,否则git会提示:please tell me who you are. 你需要运行命令来配置你的用户名和邮箱: $ git con ...

  7. 初次运行Git前的配置

    初次运行Git前的配置 一.初次运行 Git 前的配置 一般在新的系统上,我们都需要先配置下自己的 Git 工作环境.配置工作只需一次,以后升级时还会沿用现在的配置.当然,如果需要,你随时可以用相同的 ...

  8. Git 系列教程(3)- 初次运行 Git 前的配置

    前言 直接搬官网教程,再修改下,先啰嗦可以直接看以前的文章 Window初始化Git环境 https://www.cnblogs.com/poloyy/p/12185132.html Linux初始化 ...

  9. 初次使用git上传代码到github远程仓库

    https://blog.csdn.net/loner_fang/article/details/80488385 2018年05月28日 21:02:31 蒲公英上的尘埃 阅读数:697 因为最近在 ...

  10. 初次安装git配置用户名和邮箱及密钥

    在Windows上安装Git: 在Windows上使用Git,可以从Git官网直接下载安装程序,(网速慢的同学请移步国内镜像),然后按默认选项安装即可. 安装完成后 键盘敲上:windows+r你会看 ...

随机推荐

  1. 初露头角!Walrus入选服贸会“数智影响力”数字化转型创新案例

    9月5日,由北京市通信管理局.工业和信息化部新闻宣传中心联合主办的"企业数字化转型论坛"在2023中国国际服务贸易交易会期间召开,论坛以"数字化引领 高质量发展" ...

  2. 在阿里云上部署Solid服务器

    1.Solid是什么? Solid(中文文档)是一个令人兴奋的新项目,由万维网发明者 Tim Berners-Lee 爵士在麻省理工学院启动. 该项目旨在从根本上改变 Web 应用程序的中心化趋势, ...

  3. OCI云主机环境如何上传下载文件

    OCI云主机的连接是使用密钥而非用户密码连接. 之前使用的非主流的一个SSH工具,正常连接主机都没问题,但需要手工输入用户. 可是在选择SFTP时,始终找不到用户名的设置,导致密钥连接的SFTP始终失 ...

  4. Solution -「CF 1477A」Nezzar and Board

    Description Link. $ n $ distinct integers $ x_1,x_2,\ldots,x_n $ are written on the board. Nezzar ca ...

  5. #POWERBI_指标监控(第二部分,周期内下降天数及日期明细)

    在指标监控的第一部分文章中,我们已经讲了,如何用DAX去查询一段周期内连续下降或者上升指标. 需要复习的同学可以点击下方链接: https://www.cnblogs.com/simone331/p/ ...

  6. c语言代码练习12

    //计算1/1-1/2+1/3...-1/100的和#define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> int main() { in ...

  7. CCF PTA&中国科教工作者协会联合认证

    首页 项目简介 条例规定 通知公告 组织机构 服务中心 联系我们 登录|注册 当前位置:首页 > 新闻动态 开放报名:CCF PTA&中国科教工作者协会联合认证 发布时间: 2023-0 ...

  8. 如何编写难以维护的 React 代码?耦合通用组件与业务逻辑

    在众多项目中,React代码的维护经常变得棘手.其中一个常见问题是:将业务逻辑直接嵌入通用组件中,导致通用组件与业务逻辑紧密耦合,使其失去"通用性".这种做法使通用组件过于依赖具体 ...

  9. 15. 从零开始编写一个类nginx工具, 如果将nginx.conf转成yaml,toml,json会怎么样

    wmproxy wmproxy将用Rust实现http/https代理, socks5代理, 反向代理, 静态文件服务器,后续将实现websocket代理, 内外网穿透等, 会将实现过程分享出来, 感 ...

  10. 【matplotlib 实战】--气泡图

    气泡图是一种多变量的统计图表,可以看作是散点图的变形.与散点图不同的是,每一个气泡都表示三个维度的数据,除了像散点图一样有X,Y轴,气泡的大小可以表示另一个维度的数据.例如,x轴表示产品销量,y轴表示 ...