Git权威指南

当前位置:首页 > 计算机/网络 > 程序设计 > Git权威指南

  • 版 次:1
  • 页 数:
  • 字 数:
  • 印刷时间:2011年06月01日
  • 开 本:16开
  • 纸 张:胶版纸
  • 包 装:平装
  • 是否套装:否
  • 国际标准书号ISBN:9787111349679
作者:蒋鑫 著出版社:机械工业出版社出版时间:2011年06月 
编辑推荐

  Git领域的集大成之作,在广度、深度和实战性上均史无前例
  国内**Git专家亲自撰写,Git官方维护者等数位专家联袂推荐

 
内容简介
  《Git权威指南》是Git领域的集大成之作,是一本关于Git的百科全书,在广度、深度和实战性上让同类作品望尘莫及。作者是国内*的版本控制专家和咨询顾问之一,本书得到了Git官方维护者JunioC Hamano和ITeye创始人范凯(Robbin)先生等数位专家的高度认可和极力推荐,权威性毋庸置疑。
作者简介

蒋鑫,国内*的版本控制专家和咨询顾问之一,对Subversion和Git等版本控制工具有十分深入的研究,参与了Git以及Gitosis、Gitolite、Repo、Topgit、Gistore等与Git相关的开源软件的开发或创建,在大量实践中积累了丰富的经验。此外,他还是一位开源软件实践者,作为北京群英汇信息技术有限公司的创始人兼高级顾问,一直从事开源软件的定制以及面向研发团队的项目管理软件的推广和顾问咨询工作,致力于推动开源软件在中国的发展。

目  录
前言
第1篇 初识Git
 第1章 版本控制的前世和今生
 第2章 爱上Git的理由
 第3章 Git的安装和使用
第2篇 Git独奏
 第4章 Git初始化
 第5章 Git暂存区
 第6章 Git对象
 第7章 Git重置
 第8章 Git检出
 第9章 恢复进度
 第10章 Git基本操作
 第11章 历史穿梭
媒体评论
2009年9月,我出版了一本针对日本读者的Git专著,当Linus收到我赠送的签名本时,他对我说:“除了截图和命令行示例外,其他我什么也看不懂”(Linus不懂日文)。因为同样的原因,虽然我不能了解蒋鑫这本书的全部内容,但是我可以看出这本书涵盖了非常广泛的主题,并且可以看出蒋鑫对这本书的用心。我非常高兴能够看到这本书的出版,感谢向世界传播Git。——JunioC Hamano Git维护者(2005年7月至今)仔细拜读了本书前三篇共20章的内容,感觉这本书极好。作者在软件版本控制系统方面有超过10年的经验,对版本控制系统有非常深入的认识。尤为难得的是,本书文笔很流畅,虽然是技术书籍,但是作者娓娓道来,阅读体验很好。Git的学习门槛较高,包括我们公司在内的很多企业都将版本控制系统转向了Git,强烈推荐大家看一看。
——范凯(Robbin) CSDN平台开发总监/ITeye(www.iteye.com)创始人
这是我读过的最好的关于Git的书。将复杂的Git解释得清晰而透彻绝非易事,蒋鑫做到了,更让人惊喜的是,他还分享了大量的经验总结。我几年来累积下来的诸多疑惑都在读罢该书后一一得以解开。如果你正在使用,或者打算使用Git,本书当然是必备的。你也可以抱着Subversion或CVS不放,不过,如果哪一天有人拿起这本书敲你的头时可别怪我没提醒过你。
在线试读部分章节
  版本控制是管理数据变更的艺术,无论数据变更是来自同一个人,还是来自不同的人(一个团队)。版本控制系统不但要忠实地记录数据的每一次变更,还要能够帮助还原任何一次历史变更,以及实现团队的协同工作等。Git就是版本控制系统中的佼佼者。
  我对版本控制系统的兴趣源自于我的个人知识管理实践,其核心就是撰写可维护的文档,并保存于版本控制系统中。可维护文档的格式可以是DocBook、FreeMind、reStructuredText 等。我甚至还对 FreeMind加以改造以便让其文档格式更适合于版本控制系统,这就是我的第一个开源实践:托管于 SourceForge 上的 FreeMind-MMX项目①。文档书写格式的问题解决之后,就是文档的存储问题了。通过版本控制系统,很自然地就可以实现对文档历史版本的保存,但是如何避免因为版本控制系统瘫痪而导致数据丢失呢?Git用其崭新的分布式的版本控制设计提供了最好的解决方案。使用Git,我的知识库不再只有唯一的版本库与之对应,而是可以通过克隆操作分发到不同的磁盘或主机上,克隆的版本库之间通过推送(PUSH)和拉回(PULL)等操作进行同步,数据安全得到了极大的提升。在版本控制系统的忠实呵护下,我的知识库中关于Git的FreeMind 脑图在日积月累中变得越来越翔实,越来越清晰,最终成为本书的雏形。
  版本控制能决定项目的成败,甚至是公司的生死,此言不虚。我在推广开源项目管理工具和为企业提供咨询服务的过程中看到,有很多团队因为版本控制系统管理的混乱导致项目延期、修正的Bug重现、客户的问题不能在代码中定位……无论他们使用的是什么版本控制系统(开源的或是商业的)都是如此。这是因为传统的集中式版本控制系统不能有效地管理分支和进行分支间合并。集中管理的版本库只有唯一的分支命名空间,需要专人管理,从而造成分支创建的不自由;分支间的合并要么因为缺乏追踪导致重复合并、引发严重冲突,要么因为版本控制系统本身蹩脚的设计导致分支合并时效率低下和陷阱重重。Git凭借其灵活的设计让项目摆脱分支管理的梦魇。
我的公司也经历过代码管理的生死考验。因为公司的开发模式主要是基于开源软件的二次开发,所以最早在使用SVN(Subversion)做版本控制时,很自然地使用了SVN卖主分支模型来管理代码。随着增加和修改的代码越来越多,我们开发的软件与开源软件上游的偏离也越来越远,当上游有新版本发布时,最早可能只用几个小时就可以将改动迁移过去,但是如果对上游的改动多达几十甚至上百处时,迁移的过程就会异常痛苦,基本上和重新做一遍差不多。那时似乎只有一种选择:不再与上游合并,不再追踪上游的改动,而这与公司的价值观“发动全球智慧为客户创造价值”相违背。迷茫之中,分布式版本控制系统飘然而至,原来版本控制还可以这么做。
我最先尝试的分布式版本控制系统是 Hg(Mercurial),当发现Hg和 MQ(Hg的一个插件)这一对宝贝儿的时候,我如获至宝。逐渐地,公司的版本库都迁移到了Hg上。但随着新的开发人员的加入,问题又出现了,一个人使用Hg和MQ很好,但多个人使用时则会出现难以协同的问题。于是我们大胆地采用了Git,并在实践中结合 Topgit 等工具进行代码的管理。再一次,也许是最后一次,我们的代码库迁移到了 Git。

 Git权威指南下载



发布书评

 
 

 

PDF图书网 

PDF图书网 @ 2017