1.Git简介
Git是一个免费、开源的分布式版本控制系统,可以敏捷高效的进行各种规模大小的项目版本管理。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
2.Git与SVN区别:
- GIT是分布式的,SVN不是:这是GIT和其它非分布式的版本控制系统,例如SVN,CVS等,最核心的区别
- GIT把内容按元数据方式存储,而SVN是按文件:所有的资源控制系统都是把文件的元信息隐藏在一个类似.svn,.cvs等的文件夹里。
- GIT分支和SVN的分支不同:分支在SVN中一点不特别,就是版本库中的另外的一个目录
- GIT没有一个全局的版本号,而SVN有:目前为止这是跟SVN相比GIT缺少的最大的一个特征。
- GIT的内容完整性要优于SVN:GIT的内容存储使用的是SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。
3.什么是集中式?
集中式开发:是将项目集中存放在中央服务器中,在工作的时候,大家只在自己电脑上操作,从同一个地方下载最新版本,然后开始工作,做完的工作再提交给中央服务器保存。这种方式需要联网,现在云开发就是这样的处理方式。
缺点:
- 如果网络出现异常或者很卡,直接影响工作效率。如果是中央服务器挂了,那就集体喝茶去了。
- 安全度不高,重要的东西都放在一个中央服务器中,如果被黑,那损失就大了。
优点:
- 减少了硬件和软件成本,硬件不用说了,现在流行盒子,一个小盒子只要连上中央服务器即可,以前都是一个个主机箱,那成本大多了。如果用到工具软件需要收费,只需买一套正版就OK了。
4.什么是分布式?
分布式开发:只要提供一台电脑作为版本集中存的服务器放就够了,但这个服务器的作用仅仅是用来方便“交换”大家的修改,没有它也一样干活,只是交换修改不方便而已。而每一台电脑有各自独立的开发环境,不需要联网,本地直接运行,相对集中式安全系数高很多。
5.GitLab安装与环境配置
- 安装GitLab的依赖包
- 安装GitLab的rpm包
- 执行gitlab-ctl reconfigure,完成GitLab的重新配置
- 修改GitLab的配置文件
6.Git命令
- git add <file> # 将工作文件修改提交到本地暂存区
- git help <command> # 显示command的help
- git show # 显示某次提交的内容 git show $id