分布式版本控制系统——git

文章目录

    • 一、git的简介
        • 1.git的功能特性
    • 二、git的常用命令使用
        • 1.git的安装
        • 2.本地版本库的搭建和文件的上传
        • 3.暂存区和工作区的状态区别
        • 4.版本的回退和升级

一、git的简介

Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 Git最初 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

1.git的功能特性

集中式版本控制系统最大的毛病就是必须联网才能工作。

那分布式版本控制系统与集中式版本控制系统有何不同呢?首先,分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库,这样,你工作的时候,就不需要联网了,因为版本库就在你自己的电脑上。既然每个人电脑上都有一个完整的版本库,那多个人如何协作呢?比方说你在自己电脑上改了文件A,你的同事也在他的电脑上改了文件A,这时,你们俩之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。

和集中式版本控制系统相比,分布式版本控制系统的安全性要高很多,因为每个人电脑里都有完整的版本库,某一个人的电脑坏掉了不要紧,随便从其他人那里复制一个就可以了。而集中式版本控制系统的中央服务器要是出了问题,所有人都没法干活了。

二、git的常用命令使用

1.git的安装

因为git本就是为了管理linux而诞生的,所以linux系统中的yum源里自带git软件,直接yum安装即可

yum install git -y

2.本地版本库的搭建和文件的上传

什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。

mkdir demo		##建立一个目录
cd demo/
git init		##把这个目录变成Git可以管理的仓库
此时查看目录下的隐藏文件,会发现多了一个.git目录,这个目录是Git来跟踪管理版本库的,没事不要手动修改这个目录
里面的文件,不然改乱了就会把Git仓库给破坏了。

分布式版本控制系统——git_第1张图片
分布式版本控制系统——git_第2张图片

vim readme.txt				##编辑一个文件来进行测试
git status -s 				##查看文件的状态
git add readme.txt			##将文件添加到暂存区,此时状态有一个A
git commit readne.txt	-m	"test"     	##将文件添加到工作区,-m表示添加文件描述,不然就要进入交互页面填写

分布式版本控制系统——git_第3张图片
分布式版本控制系统——git_第4张图片
分布式版本控制系统——git_第5张图片
分布式版本控制系统——git_第6张图片
分布式版本控制系统——git_第7张图片

在上传到仓库后,再次修改文件,会在右边多出一个M,表示开始跟踪文件
把修改的文件再次add添加到暂存区,M会出现在左边
在暂存区时再次修改文件,会出现两个M

分布式版本控制系统——git_第8张图片

自动过滤一些临时文件或运行程序时产生的一些无用文件
vim .gitignore		##写入需要过滤的文件

分布式版本控制系统——git_第9张图片
分布式版本控制系统——git_第10张图片

3.暂存区和工作区的状态区别

工作区(Working Directory)
就是在电脑里能看到的目录,比如我们刚才建的demo文件夹就是一个工作区

版本库(Repository)
工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。
Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。

4.版本的回退和升级

重新编写一个文件来测试:
vim testfile		##修改时可以追加的方式修改数字,方便一会我们查看现象
test1
git add .			##将当前目录下的文件添加到暂存区
git commit testfile -m "v1"			##描述为v1

分布式版本控制系统——git_第11张图片

git log			##现实工作中可能改动会很复杂,这就需要我们通过查看日志来看对版本进行的操作
git log --pretty=oneline		##如果嫌信息太多不容易看,可以这样每个版本只输出一行信息

分布式版本控制系统——git_第12张图片

分布式版本控制系统——git_第13张图片
分布式版本控制系统——git_第14张图片

git reset --hard HEAD^		##回退到上个版本

那我们想回到新版本怎么办呢,需要通过版本号来查看,
git log			##已经看不到v3的信息了
git relog		##可以查看我们的操作命令信息
git reset --hard f654799		##通过指定版本号可以回到新版本

分布式版本控制系统——git_第15张图片
分布式版本控制系统——git_第16张图片

你可能感兴趣的:(实战)