
上QQ阅读APP看书,第一时间看更新
第3章
Git及Git工作流程
将项目工程的所有变更(代码、配置、文档、手册等与项目有关的变更)全部纳入版本控制(version control),可以很清晰地追踪到项目工程从诞生到结束整个过程中的所有变化。除此之外,版本控制还可以帮助我们退回到某个正确的历史版本。我们将具有版本控制能力的系统称为版本控制系统(Version Control System,VCS),目前业界有很多可提供版本控制能力的软件,大致上可将其分为两大类,具体如下。
- 集中式版本控制系统:CVS(Concurrent Version Control,并发版本控制)、SVN(subversion)、TFS(Team Foundation Server)和Perforce等都属于集中式的版本控制解决方案。在集中式的版本控制系统中,仅拥有一个控制文件及版本的中央服务器,如果出现网络问题,那么对变更的提交将会失败。
- 分布式版本控制系统:Bazaar、Mercurial、Git均属于分布式的版本控制解决方案,在分布式的版本控制系统中,即使远程服务器出现问题,也丝毫不会影响变更的提交操作。开发人员可以在脱机(offline)状态下工作,首先,将变更提交至本地仓库并记录在案,然后,在未来的某个时间将本地变更同步至远程仓库,供其他人获取。
Git出自大师Linus Torvalds(Linux操作系统内核的缔造者)之手,经过多年的发展,已经成为分布式版本控制系统领域事实上的标准,目前全球最大的代码仓库GitHub就是基于Git开发的。
本章将重点介绍如下内容。
- Git的安装和基本操作。
- Git的常用命令和本地操作。
- Git与远程仓库的交互和操作。
- Git常见的配置和别名alias用法。
- 团队协作Git Work Flow。