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"命令生成的分支一般属于次分支;分支结构如下图所示:


在这里插入图片描述

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

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,384评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,845评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,148评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,640评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,731评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,712评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,703评论 3 415
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,473评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,915评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,227评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,384评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,063评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,706评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,302评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,531评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,321评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,248评论 2 352

推荐阅读更多精彩内容