1.版本控制的分类
1)本地版本控制
用户本地电脑包含了项目每个历史版本信息
2)集中版本控制 ->代表:SVN
用户本地电脑没有历史版本信息,所有历史数据保存在一个中央服务器上,需要通过联网从中央服务器上获取或者更新。
缺点:服务器损坏可能丢失数据,断网则无法正常工作
3)分布式版本控制 ->代表:Git
每个用户本地电脑都包含了所有历史版本信息。只要有一个用户电脑没有损坏或者服务器没有损坏,其它用户就可以获取所有历史数据
缺点:会增加用户本地存储空间压力
2.SVN与Git的区别
SVN是集中式版本控制系统,版本库只放在中央服务器中,每个用户需要通过联网从中央服务器拉取最新的数据,然后将自己修改完的数据推送到中央服务器
而Git是分布式版本控制系统,每个用户的电脑都是一个完整的版本库,工作的时候不需要联网,一个用户只需要与任意的其它用户互相推送各自的修改,就能够看到对方修改的内容了。
Git是目前最先进的分布式版本控制系统!
3.git的四个工作区
1)Workspace工作区:平时存放代码的地方
2)Index/Stage暂存区:暂时存放代码修改的地方(是一个文件)
3)Repository仓库区(本地仓库):提交的所有历史版本代码,head指向最新放入仓库的版本
4)Remote远程仓库:托管代码的服务器,进行远程数据交换
<四个区的转换关系>:
4.Git工作流程图:
5.新建一个git项目
<两条命令>
git init 创建一个全新的git仓库
git clone [远程代码仓库地址] ->将远程服务器上的项目克隆过来
6.忽略文件
某个文件不想纳入版本控制之中,我们可以在项目主目录中创建一个.gitignore文件,文件中声明要忽略的文件类型或者目录