首页 > 其他分享 >初次认识 Git (v2.x)

初次认识 Git (v2.x)

时间:2023-12-22 11:12:27浏览次数:28  
标签:GitServer Git v2 git 初次 版本 yum root

什么是版本控制?

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

标签:GitServer,Git,v2,git,初次,版本,yum,root
From: https://www.cnblogs.com/zhangwencheng/p/17833358.html

相关文章

  • Uniapp开发:HBuilder开发工具从Git引入的项目文件修改后不区分显示标识的问题
    一、问题如下使用的HBuilderX版本:3.98Git插件已安装:项目结构如下:右击项目目录,在git命令中-》检查已修改,可以发现还是能检索到修改过的文件:文件是有修改过的,但是在上图中没有任何的修改标识,这些文件也没有添加到.gitignore配置中。......
  • ml.net例子笔记6-ml.net v2之AutoML
    AutoML1概念自动化机器学习也称为自动化ML或AutoML,是将机器学习模型开发过程中耗时的反复性任务自动化的过程。数据科学家、分析师和开发人员可以使用它来生成高度可缩放、高效且高产能的ML模型,同时保证模型的质量。https://learn.microsoft.com/zh-cn/dotnet/machine-l......
  • 如何在 Git 书写良好的 Commit Messages
    如何在Git书写良好的CommitMessagesWhy(为什么编写)|How(如何编写)WhyMessagesAdiffwilltellyouwhatchanged,butonlythecommitmessagecanproperlytellyouwhy良好的Messages可以告诉人们变更的原因,更好高效地理解几个月前甚至几年前发生的事情。......
  • 软件测试/测试开发|GitHub怎么用,这篇文章告诉你
    前言作为一个刚刚接触代码的程序员,可能我们会听到一个词GitHub,把代码提交到GitHub上,或者从GitHub上克隆项目到本地,在GitHub上查看某个工具的文档等等,我们不禁要问,GitHub究竟是什么,该怎么用,本文就给各位初学者们介绍什么是GitHub,它能帮我们干什么?什么是GitHubGitHub是一个面向......
  • 将本地代码添加到gitee
    新建仓库,将代码加入gitee根据提示创建仓库填写完成后创建readme文件,目的为了初始化分支。现在按照下面命令操作#进入本地项目文件夹cdxxxgitinitgitremoteaddoriginhttps://gitee.com/zcjlq/test1.gitgitpullgitaddxxxgitcommit-m"xxx"gitpush已有gitee仓库,将......
  • Gitlab-CICD
    CICD是什么我们的开发模式经历了如下的转变:瀑布模型->敏捷开发→DevOps(Development、Operations的组合词,是一组过程、方法与系统的统称)后来随着DevOps的兴起,出现了持续集成(ContinuousIntegration)、持续交付(ContinuousDelivery)、持续部署(ContinuousDeployment)的新方法,关于......
  • Flutter 编译是pod intsall github 资源下载失败
    在fluterr编译报错然后显示github.xxxxx访问超时处理办法podinstall主要是读取profile文件platform:ios,'9.0'target'YourAppName'douse_frameworks!#这是安装依赖位置pod'SomeDependency'#添加其他依赖项...end想办法下载到github的文......
  • Fine-tuning: 深度解析P-tuning v2在大模型上的应用
    随着深度学习技术的不断发展,大模型在自然语言处理(NLU)领域的应用越来越广泛。然而,大模型的训练和微调往往需要大量的计算资源和时间,这给实际应用带来了很大的挑战。P-tuningv2作为一种有效的微调方法,对于大模型也表现出了良好的性能。本文将深入解析P-tuningv2为什么对大模型有效......
  • Git
    第1章Git概述Git本地工作机制:第2章Git安装查看git版本:RenZiQiong@RubyMINGW64~/Desktop$git--versiongitversion2.31.1.windows.1第3章Git常用命令第1节设置用户签名gitconfig--globaluser.name用户名:设置用户签名gitconfig--globaluser.email邮箱:设置用户签名g......
  • git 下载指定文件夹的方法
    有时候一个项目非常大,特别像一些课程源码往往只需要下载一个文件夹。下面是用git下载指定目录的办法。这里以 https://gitee.com/dotnetmoyu/SimpleAdmin.git为例,只下载其中的web文件夹。  git命令如下://克隆元数据到本地,但不开始下载gitclone-nhttps://gitee.......