分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1)

这篇具有很好参考价值的文章主要介绍了分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

文章目录:

        1:什么是Git以及作用

        2.Git的基本操作过程(创建git仓库,配置仓库的配置)

        3.git的工作区,暂存区,版本库的关系

        4.将文件添加到版本库:git add 与git commit -m命令

        5.git log查看日志的引入

        6.查看.git文件中的内容

        7.修改文件内容查看 git diff 与git diff HEAD

        8.版本回退的概念引入以及命令

        9.撤销修改的引入与相关指令操作

        10.git rm 删除版本库文件


前言:

        本文章是讲解Git的相关操作的,深刻理解Git的操作过程与操作,掌握Git企业级的应用,从0开始讲解Git。

文章正式开始:

1:什么是Git 以及作用

        首先在讲解什么是Git之前我们先来聊一聊关于我们工作中的一个场景:

        我们日常在工作的时候我们的老板可能让我们写一个需求文档(文档1),而当我们写完文档1之后我们可能就将这个文档1交给老板,可是我们的老板对我们的文档1不是怎么很满意觉得我们的文档缺了一点什么,于是让我们将这个文档拿下去进行修改,于是我们就拿着文件去进行修改了,此时我们将文档2给修改出来了,又将这个文档交给老板,老板可能觉得还是对这个文件不是很满意,于是又让我们去修改文档.......,假设最终我们修改到了第10版文档,可是老板觉得我们的第5份文档是最满足他的需求的,于是我们就去寻找文档5,如果我们之前没保存文档5那我们的内心是非常崩溃的,因为我们已经修改文档很多次了并不知道文档5是什么内容了,但是我们如果修改的并不是同一份文件而是每次修改的时候都是新建一个副本文档进行修改,那么我们就开开心心的拿着第5份文档交给老板。

                从上面的工作场景不难发现我们修改文件的时候由两种方式一种是在同一份文件进行多次修改,另外一种情况就是对要修改文件的副本文件进行修改,显然第二种情况是比较好的修改方式,因为这种修改方式可以让我们找到我们每次修改文件的版本。

而为了对我们的文件进行管理于是就有了git这个主流的版本管理控制器之一。

所以我们可以将Git简单的理解为:对文件进行管理的版本控制系统,能够帮我们知道这个文件的各个版本以及里面的内容。这里的文件可以是任何格式的文件,而对于开发者来说git最大的作用就是用来管理我们的源代码的。

2:Git的基本操作(centos下的操作)

        1:首先在我们的centos系统下我们需要安装Git

        命令:

root用户:yum install -y git
普通用户:sudo  yum install -y git

      创建git仓库

      首先要注意的是我们的创建仓库一定是在一个目录下进行创建的

    分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

        创建一个git仓库:git init

        


        配置仓库

   

git config user.name "xxxxx" 

git config user.email "xxxxx" 

         

首先在配置名字和邮箱之前我们可以查看一下git有无配置这两个,如果配置了我们就可以不进行配置,一般而言如果我们是刚开始建立git仓库都需要进行配置。

查看git的配置项指令: git config -l

 分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

所以我们来配置name与email

        分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

  我们还可以加一个 --global的选项来进行配置这两个如:

        git config --global user.name "    "

        git config --global user.email "    "

分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

是否加 --global看自己的意愿。


配置项的删除

        假设我们的配置项不小心配置错了或者我们需要对一个git仓库的配置项进行修改那么我们就可以使用以下的指令:

        git config  --unset user.name(user.email)  对于局部配置

        git config --global  --unset   user.name(user.email)  对于全局的配置

分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

        


3:git的三大区域介绍

        其实我们的git真正管理的是位于版本库中的文件,但是在git仓库目录的文件还不能被git进行管理,而需将他添加到git的版本库中才能进行管理。

分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

我们通过上面的图形来介绍几个概念

        工作区:.git文件的同级路径下的区域,简单的理解就是我们在写代码的区域。

        暂存区:属于.git版本库中一个非常重要的内容,我们将工作区的内容通过add指令之后文件就会被放在该区域。

       git的版本库:就是我们的.git目录。

        HEAD:本质是一个指针用来指向我们当前是在那个分支下。

        master:本质里面存的是commit id

        object对象库:当我们对工作区进行修改的时候,我们修改的内容会被存储在object对象库中。

        分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

.git文件中就有上述的一些区域。


4.git add  与git commit -m 

        在上面我们已经对于git的区域有一定的了解了,那么我们也就可以引入两个指令了。

        git add  .  or git add filename

        首先这个命令是针对于工作区与暂存区进行的命令。

        意义是:将我们工作区修改的内容添加到暂存区。

        “修改“:并不是局限于对文件的修改还包括删除和创建文件

        git add . 与git add filename的区别

        add .  :表示将工作区所有的修改添加到暂存区中。

        add filename: 将该文件的修改添加到暂存区中。

        如我们先使用上述命令来进行相关的操作:

分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

        git status

        这个指令可以用来查看我们当前三个工作区的状态

         


        git commit -m  ” xxxx“    ”“分号里面建议认真的写本次做了什么操作

        git status 查看三个区域的状态分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux 


5:git log  查看日志的指令

        这个指令可以用来查看我们提交到版本库中的日志

分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

还可以使用 简单漂亮的打印指令

git log --pretty=oneline

分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux


6. .git文件里面的内容介绍

        .git其实是树目录里面有许多文件或目录,我们在linux下使用tree命令来查看

分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

        index:也就是我们所说的暂存区,里面存着的是add 修改的内容

        HEAD:也就是我们所说的指针,里面存着的是我们指向的分支

        object:称为对象库,里面存着的是我们我们每次对工作区进行修改的内容的索引

        master:其实就是我们最新一次的commit id,我们可以来看看。

分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux


7.修改内容的查看

        我们知道git是版本控制管理系统,所以git最重要管理的是修改并非是文件

        我们先引入几个场景

        1.只是修改了文件的内容,无add。

        这种情况下我们git如果想要知道本次文件的内容上次该文件内容的差异我们呢一个如何进行查看呢?? 

       当然这种差异我们可能可以通过我们的记忆知道两个文件的区别,可是当我们时间一久那我们还会记住吗??

所以我们的git提供了一个指令用来显示工作区与暂存区的区别

        git diff filename

我们通过图片来进行演示。

分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

        场景2:修改的文件已经add了,想要查看文件在暂存区与版本库中的差别

        git diff HEAD -- filename

分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

        此时暂存区与版本库的差异就出来了。


8.版本回退

        我们知道我们的git有一个重要的功能就是对文件进行版本管理,所以版本回退是git的一个非常重要的知识。

        版本回退经常用于,我们假如已经开发了一段时间了,可是我们对我们的开发结果不是怎么很想要了,并且想要在上一个版本下重新进行开发,那么这时我们的版本回退的操作就非常需要了。

    版本回退语法:git reset  [--soft] [--mixed] [--hard]  commitid  [HEAD]

        commitid:就是我们用git log打印时commit 后面的那些数字,当然commitid 也可以是HEAD,表示的是当前版本

        回退的本质:将版本库的内容进行回退,其他区域回不回退需要看选项回退。 

        我们结合图来进行解释具体的选项的意思。

分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

--soft:只回退版本库中的内容。

--mixed:版本库和暂存区都会回退,也是git reset的默认选项。

--hard:将所有区域的内容都进行回退,要慎用。


分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

        此时假设我们已经开发了一次,备注了“coding x function”

        且文件中的内容为:

分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

        我们不想要这一次的结果了,我们想回到上一个版本。

        此时就可以使用git提供的版本回退功能了。

分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

此时的test的内容

分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

这样就将工作区,暂存区,版本库中的内容全部回归到上一个版本了。

        从这里我们也能发现git的版本回退是非常快速的,这是因为回退其实就是将HEAD指针的master修改就行,所以修改速度非常快。


分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux     git reflog 可以查看我们所有的commit id,这样导致了我们可以随便回归到那个版本。

        但是不建议随便乱回退,可能commit id会被冲掉。

        我们通过图来讲解git版本回退时本质的内容

        分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

        

9.撤销修改文件

         这里的撤销修改指的是我们在对一个文件进行操作的时候所对应的操作,也就是觉得我们本次开发的代码非常不好,想回到开始时候的状态。

        1:对工作区的代码的撤销,无add

                方法1:自己手动修改。这种方法太挫了,这里就不进行演示了。

                方法2:git checkout -- [filename],回到最近一次的add状态与commit状态。

            分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

                


        2.已经进行了 add 操作,但没有commit操作

        分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

        方法:git reset HEAD filename +git checkout -- [filename] 两步走

 


        3.已经add,已经commit了

        这时候的撤销我们只能依靠我们的git reset --hard/mixed/soft  commitid 了,版本回退。

        这里就不给大家进行演示了。


        10.删除版本库中的文件

        命令:git rm filename

                我们通过具体的实例来讲解git rm

        我们先创建file1,file2,file3,然后将他们删除。

        分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

 分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux

        此时使用git status来进行查看内容

分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux        我们在只需 git commit 操作就能将文件给彻底删除了。

        总结使用git rm删除版本库中的文件的两步: git rm filename +git commit -m " xxx"


        如何恢复我们在工作区所不小心删除的文件呢?

        这里就可以使用撤销操作了,因为删除本质上也是修改。

        分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1),git,git,深度学习,linux


        本篇文章完!!!!感谢大家的耐心观看。

还有的内容将会在后面的文章中进行介绍,如果你觉得对你有用的话可以给个赞。文章来源地址https://www.toymoban.com/news/detail-753675.html

到了这里,关于分布式版本管理系统---->Git(Linux---centos(保姆式)讲解1)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux | 分布式版本控制工具Git【版本管理 + 远程仓库克隆】

    本文来为读者介绍一下分布式版本控制工具Git,可能你听说过Gitee/GitHub,里面都带有git的字样,那它们和Git之间有什么关联呢❓ Git又是何物,让我们一起走进本文的学习📖 Git(读音为/gɪt/)是一个 开源的分布式版本控制系统 ,可以有效、高速地处理从很小到非常大的项目

    2024年02月01日
    浏览(59)
  • Git----分布式版本控制系统

    Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或大或小的项目。它是世界上目前最先进的分布式版本控制系统。 Git是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源代码的版本控制软件。 Git与常用的版本控制工具CVS、Subversion等不同,它采用了分布

    2024年02月15日
    浏览(59)
  • git分布式版本控制系统

    右键菜单 选择Git Bash Here,输入任意一条后回车来查看当前Git软件的安装版本。 2.1 区域 Git软件为了更方便地对文件进行版本控制,根据功能得不同划分了三个区域 存储区域:Git软件用于存储资源得区域。一般指得就是.git文件夹 工作区域:Git软件对外提供资源得区域,此区

    2024年03月21日
    浏览(63)
  • Git——分布式版本控制系统

    Git是一个开源的分布式版本控制系统,可以高效的处理从小到很大的项目版本管理。 集中式 SVN,CVS 使用单一的服务器用来管理和存储所有文件的修订版本;协同开发的成员拉取或提交都需连接到这台服务器;如果服务器宕机,宕机期间任何人都不能拉取或提交,无法做到协

    2024年02月10日
    浏览(60)
  • Git 分布式版本控制系统

    版本控制系统是一种记录文件变更历史的系统,它允许开发者跟踪文件的修改、还原特定版本、并在多个用户之间协同工作。VCS 主要有两种类型:集中式版本控制系统(Centralized VCS,如 SVN)和分布式版本控制系统(Distributed VCS,如 Git)。 版本追踪: 可以追踪文件的每一次

    2024年01月17日
    浏览(48)
  • 分布式版本控制系统 Git

    目录 一、Git简介 二、Git历史 三、安装git 1.准备环境 2.Yum安装Git 四、初次运行 Git 前的配置 命令集 实例: 五、Git命令常规操作  六、获取 Git 仓库(初始化仓库) 创建裸库 实例 : 创建本地库         官网:Git         git是一个分布式版本控制软件,最初由林纳斯

    2024年02月22日
    浏览(54)
  • Git分布式管理-头歌实验日志和版本回退

    在 Git 使用过程中,一种很常见的情况是:发现某个已经提交到仓库里的代码文件有致命的 bug ,必须将代码回滚到上一个版本,在这种情况下就显示出了 Git 的强大。 Git 为每次提交,都保留了日志,根据提交日志, Git 可以方便地进行版本回退。本实训通过介绍 Git 日志相关

    2024年04月23日
    浏览(34)
  • 分布式版本控制系统git详解

    是目前世界上最先进的分布式版本控制系统 git命令 很多人都知道,Linus在1991年创建了开源的Linux,从此,Linux系统不断发展,已经成为最大的服务器系统软件了。 Linus虽然创建了Linux,但Linux的壮大是靠全世界热心的志愿者参与的,这么多人在世界各地为Linux编写代码,那Lin

    2024年02月15日
    浏览(49)
  • 基于Dubbo分布式仓库管理系统设计与实现

    现如今,互联网的发展速度是人们有目共睹的,它的迅速发展从源头上改变了全世界对于管理的方式以及管理方法,从上世纪九十年代以来,我国各种单位和许多部门就在思考能否依靠互联网来对信息管理进行优化。虽然在以前,想让仓库管理和互联网相互结合存在许多方面

    2024年02月11日
    浏览(44)
  • 1.使用分布式文件系统Minio管理文件

    文件系统 文件系统 是操作系统用于组织管理 存储设备(磁盘)或分区 上文件信息的方法和数据结构,负责对文件存储设备空间进行组织和分配,并对存入文件进行保护和检索 文件系统是负责管理和存储文件的系统软件,操作系统通过文件系统提供的接口去存取文件,用户通过操

    2024年01月22日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包