目录:
1.什么是Git
2.Git安装配置
3.Git工作流程
4.Git工作区、暂存区和版本库
5.创建仓库
6.基本操作
7.分支管理
8.查看提交历史
9.标签标记
10.远程仓库
11.服务器搭建
12.开发工具继承
13.案例:通过SSH协同开发应用
1.什么是Git
Git是一个开源的分布式版本控制系统,用于敏捷高效的处理任何项目的版本问题。Git是Linux Torvalds 为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。
Git与常用的版本控制工具cvs、svn等不同,它采用了分布式版本库的方式。不必服务器端软件支持,它是主机本身既是客户端又是服务器。
1-2.关于项目版本管理
项目在开发过程中,经常会出现多人分工协作进行项目分发并开发整合的过程,所以项目在刚开始流行的时候经常会出现一些协作开发的同步的问题,同时存在项目整体进度的控制和管理的问题,所以在程序的开发行业衍生出来的版本管理工具。
版本管理工具,首先是一个内容管理工具,可以将项目的内容信息存放在版本管理服务器上方便项目组人员进行访问和查询修改。版本管理具有里程碑意义的主要有三个阶段:
cvs阶段——>svn阶段——>Git阶段
1-2-1.cvs阶段
项目搭建开发的过程中,每次提交项目都会将整个项目提交到服务器进行保存,服务器存储着项目的N个备份,开发过程中的协作效率低下,占用空间较大,同时也出现了各种传输问题,所以慢慢淡出了行业。
1-2-2.SVN阶段
考虑到cvs的缺陷,开发人员根据项目的实际情况,研发出专门针对项目版本控制的软件Subversion(简称SVN),SVN同样也是搭建服务器,让项目组成员将数据存储在服务器上,但是每次改动并提交的时候,SVN服务器并不重新保存整个项目的完整信息,而是和原来的项目进行对比,只保存改动的信息,这样就大大较少了空间的占用。所以至今为止,有很多公司依然选择使用SVN作为公司内部项目协作额版本控制软件。
1-2.3Git阶段
前面的CVS和SN都是基于一个服务器的,如果脱离服务器,项目的版本保存就没有了任何意义。Git恰恰处理了这样的问题,Git是一个分布式的版本控制系统,在Git中即使用户离线,也能进行项目的提交和更新操作,此时只是保存在本机的暂存区,等到下次连线到GitHub(类似服务器角色)时进行的整体的同步操作。
Git VS SVN
① Git是分布式的,SVN不是
②Git是按照元数据的方式存储内容,SVN是按照文件的形式存储
③Git和SVN中的分支不同
④Git没有全局版本号,SVN有
⑤Git内容的完整性由于SVN