码迷,mamicode.com
首页 > 其他好文 > 详细

NO.A.0002——Git简史及安装教程/创建本地仓库/提交项目到本地仓库/误删还原

时间:2020-11-27 11:24:28      阅读:8      评论:0      收藏:0      [点我收藏+]

标签:lis   第一步   隐藏文件夹   版本库   csdn   end   容错   下载地址   浏览器   

一、Git简史及同类产品对比:
1、git简史:
同生活中的许多伟大事件一样,Git 诞生于一个极富纷争大举创新的年代。Linux 内核开源项目有着为数众广的参与者。绝大多数的 Linux 内核维护工作都花在了提交补丁和保存归档的繁琐事务上(1991-2002年间)。到 2002 年,整个项目组开始启用分布式版本控制系统 BitKeeper 来管理和维护代码。
到 2005 年的时候,开发 BitKeeper 的商业公司同 Linux 内核开源社区的合作关系结束,他们收回了免费使用 BitKeeper 的权力。这就迫使 Linux 开源社区(特别是 Linux的缔造者 Linus Torvalds )不得不吸取教训,只有开发一套属于自己的版本控制系统才不至于重蹈覆辙。他们对新的系统订了若干目标:

  • 速度
  • 简单的设计
  • 对非线性开发模式的强力支持(允许上千个并行开发的分支)
  • 完全分布式
  • 有能力高效管理类似 Linux 内核一样的超大规模项目(速度和数据量)
    技术图片

2、git和SVN对比:
2.1、SVN:SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,如果在局域网还可以,带宽够大,速度够快,如果在互联网下,如果网速慢的话,就郁闷了。
下图就是标准的集中式版本控制工具管理方式:
技术图片

集中管理方式在一定程度上看到其他开发人员在干什么,而管理员也可以很轻松掌握每个人的开发权限。

但是相较于其优点而言,集中式版本控制工具缺点很明显:

  • 服务器单点故障
  • 容错性差

2.2、Git:Git是分布式版本控制系统,那么它就没有中央服务器的,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上。既然每个人的电脑都有一个完整的版本库,那多个人如何协作呢?比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。
下图就是分布式版本控制工具管理方式:

技术图片

3、Git工作流程:
一般工作流程如下:

    1.从远程仓库中克隆 Git 资源作为本地仓库。

    2.从本地仓库中checkout代码然后进行代码修改

    3.在提交前先将代码提交到暂存区。

    4.提交修改。提交到本地仓库。本地仓库中保存修改的各个历史版本。

    5.在修改完成后,需要和团队成员共享代码时,可以将代码push到远程仓库。

下图展示了 Git 的工作流程:

技术图片

二、Git安装教程
1、下载Git安装程序包:
下载地址:https://git-scm.com/download
技术图片

2、安装Git:
安装Git程序包:
技术图片

右键——>下一步——>安装完成——>右键打开Git Bash Here——>git --version:查看Git版本——>END
技术图片

技术图片

3、安装TortoiseGit
技术图片

安装TortoiseGit——>右键下一步——>OpenSSH——>END
技术图片

启动配置——>语言(后期再更改,默认English)——>指定git安装路径——>设置邮箱——>END
技术图片

右键——>可以看到TortoiseGit的快捷启动图标

技术图片

4、安装中文语言包:
技术图片

右键程序包——>下一步——>安装完成——>右键——>TortoiseGit——>settings——>Language:中文(简体)(中国)——>应用——>确定——>END
技术图片

三、Git配置使用:创建本地版本库,并将项目提交到本地仓库:
1、配置本地版本库:三种方式:

  • 创建文件夹:Repository repo1
    方法一:
  • 右键——>Git GUI Here——>Create New Repository——>指定创建的仓库文件路径E:/GitHub Repository/Repository/repo1——>create——>在repo1下可以看到.git隐藏文件夹(.git就是本地版本库)——>END
    技术图片

方法二:

  • 切到 .git的工作目录下\Repository\repo1——>右键——>Git Bash Here ——>键入:git init——.git本地版本库创建——>END
    方法三:
  • 切到 .git的工作目录下\Repository\repo1——>右键——>git在这里创建版本库(tortoisegit)——>带版本库的仓库不要选中:制作纯版本库——>.git本地版本库创建——>END

2、本地版本库中添加项目:

  • 工作区和暂存区:Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念。
  • 什么是工作区(Working Directory):工作区就是你在电脑里能看到的目录,比如我的reporstory文件夹就是一个工作区。有的同学可能会说repository不是版本库吗怎么是工作区了?其实repository目录是工作区,在这个目录中的“.git”隐藏文件夹才是版本库。这回概念清晰了吧。
  • Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。

如下图所示:
技术图片

  • 把文件往Git版本库里添加的时候,是分两步执行的:
    第一步:是用git add把文件添加进去,实际上就是把文件修改添加到暂存区;
    第二步:是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。

  • 因为我们创建Git版本库时,Git自动为我们创建了唯一一个master分支,所以,现在,git commit就是往master分支上提交更改。你可以简单理解为,需要提交的文件修改通通放到暂存区,然后,一次性提交暂存的所有修改。

3、向本地仓库添加文件:

  • .git:本地版本库
  • repo1:是.git本地版本库的工作目录
  • 工作目录下:向本地版本库添加文件;必须在工作目录下。

3.1、添加文件到本地版本库的stage暂存区中:

  • 在.git本地版本库下创建文件:hello.txt
    hello.txt上右键——>TortoiseGit——>添加——>确定(图一)(目前只是把文件添加到暂存区)——>END
    技术图片

技术图片

                                图一

3.2、commit暂存区stage文件到master分支 本地版本库中:

  • 在.git本地版本库工作目录下——>右键——>Git提交(C)->“master”(图一)——>提交、关闭——>文件上会有对号出现(图二)——>暂存区文件添加到本地版本库中——>END
    技术图片

                               图一

    技术图片

                               图二

3.3、查看本地仓库有什么内容:

  • 右键——>TortoiseGit(T)——>版本库浏览器——>可以查看到刚才添加的文件Hello.txt——>END
    技术图片

3.4、修改文件内容并提交:

  • 修改文件内容——>文件变为!号(说明文件已经修改)——>右键——>Git提交(C)->“master”——>填写日志文件,提交、关闭——>END
    技术图片

3.5、查看文件提交历史记录及更改的内容,比较版本差异:

  • 在Hello.txt文件上右键——>TortoiseGit(T)——>显示日志(图一)——>选中两个文件、右键——>比较版本差异(图二)——>END
    技术图片

                                图一

    技术图片

                                图二

4、删除本地仓库中的文件,误删还原:
方法一:
创建一个文件hello1.txt并添加到本地版本库中:

  • 在git本地版本库工作目录下——>右键删除hello.txt文件——>右键,版本库浏览器——>本地版本库中文件还是存在——>
    技术图片

  • 若是在提交前发现误删除了文件:还原文件——>TortoiseGit(T)——>还原——>删除文件还原OK——>
    技术图片

  • 右键——>Git提交(C)->“master”——>右键,版本库浏览器——>此刻本地仓库文件彻底删除。(此刻再想还原还原不会来了)——>END
    技术图片

方法二:
创建一个文件hello2.txt并添加到本地版本库中:

  • 在hello2.txt文件上:右键——>TortoiseGit(T)——>删除(D)(本地版本库文件还是存在)——>右键——>Git提交(C)->“master”——>本地版本库删除完成——END

方法三:

  • 删除并保留副本:创建一个文件hello3.txt并添加到本地版本库中:
    在hello3.txt文件上:右键——>TortoiseGit(T)——>删除并保留本地副本(图一)——>右键——>Git提交(C)->“master”——>本地版本库删除完成:本地电脑文件还是被保留下来——END
    技术图片

                                                    图一

NO.A.0002——Git简史及安装教程/创建本地仓库/提交项目到本地仓库/误删还原

标签:lis   第一步   隐藏文件夹   版本库   csdn   end   容错   下载地址   浏览器   

原文地址:https://blog.51cto.com/15005403/2553649

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!