1.Git与SVN的区别
SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而开发人员工作的是,用的都是自己的电脑,所以首先要从中央服务器下载最新的版本,然后开发,开发完后,需要把自己开发的代码提交到中央服务器。
集中式版本控制工具的缺点:
- 服务器单点故障,一旦中央服务器出现故障,这些代码版本都丢失了
- 容错性查,正是因为单点工作,一旦服务器出现问题,整个工作环境就不可用了
Git是分布式版本控制系统(Distributed Version Control System,简称DVCS),分为两种类型的仓库:本地仓库和远程仓库
- 本地仓库:是在开发人员自己电脑上的Git仓库(与SVN的区别在这)
- 远程仓库:是在远程服务器上Git仓库
- Clone:克隆,就是将远程仓库复制到本地
- Push:推送,就是将本地仓库代码上传到远程仓库
- Pull:拉取,就是将远程仓库代码下载到本地仓库
2.Git的工作流程
工作流程如下:
(1)从远程仓库中克隆代码到本地仓库
(2)从本地仓库中checkout代码然后进行代码修改
(3)在提交前先将代码提交到暂存区
(4)提交到本地仓库。本地仓库中保存修改的各个历史版本
(5)修改完成后,需要和团队成员共享代码时,将代码push到远程仓库
3.搭建Git远程仓库
可以借助互联网上提供的一些代码托管服务来实现,其中比较常用的有GitHub,码云,GitLab等
- GitHub,是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名GitHub
- 码云,是国内的一个代码托管平台,由于服务器在国内,所以相比于GitHub,码云速度会更快
- GitLab,是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务