Git介绍与简易搭建

  • Git介绍

  Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。 Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
  什么是“版本控制”?我为什么要关心它呢? 版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。
  Git是分布式版本控制系统,那么它就没有中央服务器的,每个人的电脑就是一个完整的版本库,所以,工作的时候就不需要联网了,因为版本库都是在自己的电脑 上。现在每个人的电脑都有一个完整的版本库,那多个人如何协作呢?比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。
  主要有如下特点:
  1. 版本控制
  2. 分布式
  3. 工作过程是将服务器上的代码下载到本地,本地开发完成后,在提交到服务器端

  • Git和SVN的对比

  1.git是分布式的,svn是集中式的。(最核心)
  2.git是每个历史版本都存储完整的文件,便于恢复,svn是存储差异文件,历史版本不可恢复。(核心)
  3.git可离线完成大部分操作,svn则不能。
  4.git有着更优雅的分支和合并实现。
  5.git有着更强的撤销修改和修改历史版本的能力
  6.git速度更快,效率更高。
  基于以上区别,git有了很明显的优势,特别在于它具有的本地仓库。

  • 三种状态:

  Git 有三种状态,你的文件可能处于其中之一:已提交(committed)、已修改(modified)和已暂存(staged)。 已提交表示数据已经安全的保存在本地数据库中。 已修改表示修改了文件,但还没保存到数据库中。 已暂存表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中

  • Git中的概念

  1.工作目录
  工作目录是对项目的某个版本独立提取出来的内容,这些从 Git 仓库的压缩数据库中提取出来的文件,放在磁盘上供你使用或修改。
  2.暂存区域
  是一个文件,保存了下次将提交的文件列表信息,一般在 Git 仓库目录中。有时候也被称作`‘索引’’,不过一般说法还是叫暂存区域。
  3.Git 仓库目录
  是Git 用来保存项目的元数据和对象数据库的地方。这是 Git 中最重要的部分,从其它计算机克隆仓库时,拷贝的就是这里的数据

  • Git工作流程

  在工作目录中修改文件 > 暂存文件,将文件的快照放入暂存区域 > 提交更新,找到暂存区域的文件,将快照永久性存储到 Git 仓库目录。
如果 Git 目录中保存着的特定版本文件,就属于已提交状态。如果作了修改并已放入暂存区域,就属于已暂存状态。如果自上次取出后,作了修改但还没有放到暂存区域,就是已修改状态。

  • 获取 Git 仓库

  有两种取得 Git 项目仓库的方法。 第一种是在现有项目或目录下导入所有文件到 Git 中; 第二种是从一个服务器克隆一个现有的 Git 仓库。

 

  • 简易安装操作

  第一步:安装httpd git(这里用apache演示)

  yum  -y install  git  httpd 

  第二步:初始化工作目录

  git  init 

  第三步:创建文件并提交

  echo 111 >> index.html
  git add . #提交文件至暂存区域
  git commit -m "v1" #提交文件至仓库

  执行:

  git config --global user.name "Your Name"
  git config --global user.email you@example.com

 

  echo 222 > index.html #再次修改文件
  git add . #进行提交
  git commit -m v2 #v2版本
  cat index.html #查看文件内容
  git log #获取提交信息

 

  git reset --hard 3d0f76d1205fe #执行回滚至v1 后需跟comit ID
  git relog #获取所有的历史提交信息

 

  git  reset  --hard   59ed7a8   #回滚至版本v2

 

  • git不同阶段回滚

  1.工作目录回滚
  echo 33 > index.html #修改文件
  git status #查看文件状态
  git checkout -- index.html #撤销工作目录文件
  cat index.html
  

  2.暂存区域
  echo 33 >index.html
  git add .
  git status
  git reset HEAD index.html
  git checkout -- index.html
  

  3.仓库
  git log
  git relog
  git reset --hard 59ed7a8ca4a

  • git分支:

  1.查看分支
  2.创建分支
  3.切换分支
  4.合并分支


  1)查看分支
  git branch


  2)创建分支
  git branch tian


  3)切换分支
  git checkout tian
  echo 33 > index.html
  git log


  4)合并分支
  git log
  git merge tian #把分支合并到当前分支

 

posted on 2019-11-17 12:26  负重前行岁月静好  阅读(166)  评论(0编辑  收藏  举报