Git版本控制工具使用教程

说明:以下对Git的介绍只针对于Window系统,Linux和Mac系统暂不介绍;

Git是什么?
1.什么是版本控制?

版本控制是指对若干个文件内容进行修改时,可以对修改的文件进行历史查阅和修订的控制系统;例如:在word中对内容进行修改之后,可以通过撤销的操作恢复之前的状态;而版本控制就像增强版的word,它可以回退到某个时刻的内容,并且可以比较当前时刻和某一时刻修改的内容差异等操作;目前主流的版本控制工具有Svn和Git;本篇主要针对Git进行介绍;

2.分布式和集中式?

关于Git的分布式和集中式的介绍请参考以下文章

参考:https://www.jianshu.com/p/8b03546a7487

3.我们为什么需要版本控制

如果拥有版本控制,你就像拥有时光机一样,任性的想回退到任何时刻文件的修改记录;

Git基本用法

安装Git
根据官网提供的下载链接进行下载即可;

下载链接:https://git-scm.com/downloads

这里就不讲述具体安装教程,直接用默认安装就行了,需要注意的将git配置到window环境变量path中(安装时默认配置好的)。这个决定这你通过命令行在任何硬盘位置上能够使用Git命令;在cmd输入git --version打印相应版本号。如图所示:

image

Git基本命令用法
第一步:在电脑上新建个testpro空文件夹,通过cmd定位到该文件夹中。并通过git init命令初始化testpro目录为仓库目录 。初始化成功后testpro空目录中会多个.git目录,如下图所示:
image

备注:如果电脑上没有显示.git目录,说明系统设置不显示隐藏目录。通过以下链接进行设置即可显示.git目录;
https://jingyan.baidu.com/article/90808022bc6381fd90c80f63.html

第二步:在testpro新建个test.txt文本文件。文件从工作目录到版本流动过程:工作区(红色提示)——》暂存区(绿色提示)——》版本库(无任何提示)。这些环节缺一不可;如下图所示:

image

以上使用的git命令有

git status:查看当前文件的Gitt状态;

1.红色提示:文件在工作区还没添加至暂存区;(上图步骤一)
2.绿色提示:文件添加到暂存区,还没有提交到版本库中(一般情况);(上图步骤二)
3.无任何提示表示当前工作区目录很干净,没有需要添加或提交的文件;(上图步骤三)

git add 文件名/.:将文件添加至暂存区。可以指定某个文件,也可以用通配符.表示全部文件
git commit -m "提交记录描述":将暂存区的文件提交至版本库中,最后的环节;

以上是基本使用,当然git不仅这些功能和命令。它还有分支和版本回退功能,有兴趣可以扩展了解下git的其他命令和功能;git命令很多,不必要全部记住,只要记得一些常用的命令即可。以下是我个人常用命令,仅做参考:
1.git init;2.git status;3.git add;4.git commit;5.git clone;6.git rm;7.git reset;8.git log;9.git branch;10.git merge;11.git checkout;12.git pull;13.git push;14.git remote;
官方文档参考地址:https://git-scm.com/docs/

Git中工作区、暂存区、版本库的基本概念
Git怎样与GitHub的关系,怎样将两者进行关联

第二问:Git中工作区、暂存区、版本库这3个是什么意思?
在Git有工作区、暂存区、版本库这三个缺一不可的概念;

Git怎样管理我们的文件?

什么是工作区、暂存区、版本库;

  1. 工作区:在某目录下通过git init命令设置成通过Git管理的文件夹时,这个文件夹里的内容就是工作区;
  2. 暂存区:可以理解为是工作区和版本库的中转站,每次将修改提交至版本库都必须通过git add 命令将修改放置在暂存区中;
  3. 版本库:是修改最终存放的位置,也可以理解为通过git init命令生成的隐藏.git目录为版本库;


    image

    以上图可知,.git目录包含暂存区和版本库。其中index区域为暂存区,而master主分支区域为版本库;

分支:分支从词面上理解就是从一个系统或主干中生成新的子系统或子支干,所以分支有主次之分。

分支是Git独特之处。在Git中,一般master为主分支(唯一的),我们可以在不影响主分支的情况下生成新的分支来记录版本修改。以免多人同时操作主分支,容易造成提交冲突问题。影响开发主线;注意在Git中系统中,只有一个主分支,并由系统主动生成,我们通过"git branch xxx"命令生成的分支一般属于次分支;分支结构如下图所示:


在这里插入图片描述

总结:分支可以从其他分支的任何节点衍生出另一个新分子,分支也可以重新合并到其他分支。同时在同一分支的不同分支节点可以衍生出同名分支;

你可能感兴趣的:(Git版本控制工具使用教程)