GIT 的历史
git和svn都是版本控制工具,由于在企业中两者都有应用,所以学习了解一下
来源:linux的作者(Linus Torvalds)在学习了unix后,仿照unix开发了一套操作系统,也就是linux。他把linux开源放到网上,吸引了大量的计算机开发爱好者的参与,他们在维护工作中,大部分时间都花在了提交补丁和保存归档的繁琐事务上,到2002年,BitKeeper这个商业公司由于欣赏这些人的公益行为,就为他们提供了免费使用BitKeeper的资格,但有些人在使用的过程中想要破解BitKeeper,却被BitKeeper的工作人员发现了,于是,在2005年,BitKeeper终止了与Linux内核开源社区的合作关系,收回了他们免费使用BitKeeper的资格。于是这些人开发了属于自己的版本控制系统——git
他们对这个系统制定了若干目标:
- 速度
- 简单的设计
- 对非线性开发模式的强力支持(允许上千个并行开发的分支)
- 完全分布式
- 有能力高效管理类似Linux内核一样的超大规模项目(速度和数据量)
SVN与Git的比较
SVN
svn是集中式版本管理工具,版本库是集中放在中央服务器(在服务器上安装svn服务端)的,开发人员在自己电脑安装svn客户端,连接中央服务器,每次交互都是与中央服务器上的版本库进行交互。
集中式的缺点:服务器单点故障、容错性差
git
git是分布式版本管理工具,他没有中央服务器,每个人的电脑都有一个完整的版本库(本地仓库)
多人协作就是将本地仓库push到共享版本库(远程仓库),或者将远程仓库的版本clone到本地
git的工作流程
一般工作流程
- 从远程仓库中克隆git资源作为本地仓库
- 从本地仓库中checkout代码然后进行代码修改
- 在提交前先将代码提交到暂存区
- 提交修改,提交到本地仓库,本地仓库保存修改的各个历史版本
- 在修改完成后,需要和团队成员共享代码时,可以将代码push到远程仓库
Git的安装
下载地址:https://git-scm.com/download
使用默认安装设置即可
默认安装位置:C:\Program Files\Git
tortoiseGit的安装
还可以安装tortoiseGit工具来简化git的操作,下载地址:https://tortoisegit.org/
需要下载两个文件,一个tortoiseGit和一个语言包,都可以在官网找到
Git的简单使用及理解
git创建本地仓库
- 在桌面创建一个空文件夹 pro1
- 打开pro1,右键打开git bash,使用命令: git init 创建本地版本库(本地仓库),会多出一个.git的隐藏文件
- .git就是本地版本库,包含.git的文件夹pro1是工作区---如果想向本地仓库添加文件,要添加的文件必须在工作区中
向本地仓库添加一个文件
- 在工作区中创建一个a.txt,右键打开git bash,使用命令: git add a.txt 会将文件添加到暂存区
- 使用命令: commit 会将文件提交到本地仓库(git版本控制工具在操作时,必须写本次操作日志)
工作区和暂存区
- 工作区:比如我的pro1文件夹就是一个工作区
- 在工作区中的.git隐藏文件夹才是版本库
- 在版本库里存了很多东西,其中最重要的就是成为"stage"的暂存区,还有git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD,下图所示