多种网盘链接检测插件 购买前,请先检测网盘链接是否有效
《Git学习指南》_1
《Git学习指南》_2
《Git学习指南》_3
内容简介:
图书在版编目(C1P)数据
Git学习指南/(德)普菜贝
斯拉赫曼著
凌杰,姜楠译.一北京:人民
2016.12
ISBN978-7-115-43676-4
①G…1.①普…②斯…③凌…④姜…I.①
软件工具一程序设计Ⅳ.①TP311.56
中guo版本图书馆CIP数据核字(2016)第251078号
版权声明
Simplified Chinese translation copyright O 2016 by Posts and Telecommunications Press.
ALL RIGHTS RESERVED
Git: Distributed Version Control Fundamentals and Workflows by Rene Preibel and Biem Stachmann
Copyright o 2014 by Rene Preibel and Bjorn Stachmann
本书中文简体版由作者 Rene Preibel和 Bjorn Stachmann授权人民邮电出版社出版。未经出版者书面许可
对本书的任何部分不得以任何方式或任何手段复制和传播
版权所有,侵权必究
ct J Rene Preibel Bjorn Stachmann
凌杰姜楠
责任编辑Chen康
责任印制焦志炜
人民邮电出版社出版发
北京市丰台区成寿寺路11号
编100164电子卸件315zptpress.com.cn
址http:/www.ptpress.com.cn
北京鑫正大印刷有限公司印
印张:1425
字数:270千字
2016年12月第1版
印数:1-3000册
2016年12月北京第1次印期
著作权合同登记号图字:01-2015-8291号
定价:49.00元
读者服务热线010)81055410印装质量热线010)81055316
反盗版热线010)81055315
内容提要
Git是一款免费、开源的分布式版本控制系统,也是当今最为流行的版本控制系统之
在众多的项目开发中普遍使用,得到程序员和工程师的欢迎和喜爱
本书是一本面向专业开发者的图书。全书分为26章,从基础概念讲起,依次向读者介绍
了有关Git的各种操作和使用技巧,不仅将提交、版本库、分支、合并等命令讲解到位
介绍了工作流、基于分支的开发、二分法排错、发行版交付、项目的拆分与合并、项目的迁
移等内容
本书适合从事项目开发的专业人士阅读,想要学习Gi的读者也可以选用
欢迎阅读本书
在前言中,我们将会为你介绍Git究竟能做什么,以及为什么你会需要这本书
为什么要用Git
Gi的背后有着一个非常精彩的成功故事。2005年4月, Linus Torvalds因不满当时任何
个可用的开源版本控制系统,就亲自着手实现了Git
时至今ri,如果我们在 GuGe E中搜索“ git version control”这几个关键词,都会看到数
以百万计的返回结果。Git已经俨然成为了新型开源项目的一个标准。许多大型的开源项目都
已经或正在计划迁移到Git上来
下面,我们来看一下这么多人之所以会选择Git的原因
t允许我们利用分支来开展工作:在一个由多个开发者并行协作的项目中
开发者
各自会有很多不同的开发路线。Gi的优势在于,它提供了一整套针对开发链的重新
整合工具,以便我们对其进行合并、变基和捡取等操作
。工作流上的灵活性:Git非常灵活。不但单一开发者可以用它,敏捷团队也可以找到
使用它工作的合适方法,甚至一个由众多开发者在不同的工作地点参与的大型guo际项
目也可以用它开发出一个很好的工作流。
适合奉献合作:大多数开源项目所依靠的都是开发者的无私奉献。因此,让这种无私
奉献的方式尽可能地简单化是一件非常重要的事。而这在一个集中式的版本控制系统
中通常是很难做到的,因为我们不可能让所有人都有权限去写版本库。但如果我们使
用Git,那么每个人都先可以克隆一个独立的工作版本库,然后再对其进行后续的改动。
高性能:Git在处理拥有许多文件且历史悠久的项目时速度也依然是非常快的。例如
使用Gt将Linx内核源码的当前版本切换到6年前的旧版本时,在一台 Macbook Air
上所需的时间不到1分钟。考虑这两个版本之间有着超过20000次的提交和4000
个更改文件,这已经足以让人印象深刻了
强大的抗故障和抗_攻.击_能力:由于项目历史被分散存储在多个分布式版本库中,因此
数据严重流失的可能性不大。再加上版本库中有着巧妙简单的数据结构,这确保了其
中的数据即使在遥远的未来也仍然会被正确地解释。而且,它还使用了统一的加密校
验,这使得_攻.击_者难以对版本库进行纂改
离线开发与多点开发:分布式的体系结构可以使得离线开发或者边旅行边开发的
变得非常容易。而且该结构在多点开发模式下,我们既不需要设置中央服.务.器,也不
需要固定的网络连接
强大的开源社区:除官方提供的详细文档外,你还可以在该社区找到无数相关的手册、
论坛、维基网站等,另外还有各种工具生态系统、托管平台、出版物、服务以及针对
各个开发环境的插件,整个社区都正在茁壮成长
可扩展性:Git为用户提供了许多实用命令,其中包括了能使我们更便于直接访问其
.远.程.版本库的命令。这可以让Git变得非常灵活,这种灵活性将允许其各种独立应用
提供比默认的Git版本更为强大的功能
本面向专业开发者的书
如果你在某一团队中从事开发工作,希望了解如何才能有效地使用Git,那么这本书就是
一个正确的选择。本书既不是那种偏重于理论的大部头,也不是一本面面俱到的参考书。我
们并不打算解释所有的Gi命令(这里可有100多条命令呢)及其全部选项(有些命令甚至
有50多个选项)。相反,我们打算在这本书中教你如何在典型的项目环境中使用Git,例如,
如何建立起一个Git项目、如何创建一个Git发行版等
本书相关内容
你将在本书中看到以下内容。
入门教程:这部分会重点演示每一个重要Git命令的用法,篇幅不会超过十几页
技术介绍:在这部分不足百页的篇幅中,你将要学习如何使用Git处理一个团队开发
中的各项事务。我们将会用大量的实例为你演示那些主要Gi命令的使用方式。此外
我们还会为你解释其中的基本概念,例如提交、版本库、分支、合并、重订等,以帮
助你了解Git的具体工作方式。在这个过程中,你还会不时地看到一些相关的提示与
技巧,你可能未必每天都会用到这些技巧,但它们有时还是会非常有用的
。工作流:这里的工作流主要指的是你在项目中使用Gt的实用场景,例如创建一个项
目的发行版等。而对于每个工作流,我们会从以下几项内来描述其目标场景
解决的是什么问题
需要增加什么必要条件
解决问题的人以及解决的时间
。“解决方案选用理由”部分:每个工作流中通常都只能有一个具体的解决方案。在Git
中,经常会存在着多个非常不同的解决路径,这些路径都可以让我们达成相同的目标
每一个工作流章节的最后一部分中,我们都会详细解释为什么要选用眼下这个解决
方案。另外。我们还会提一下相关的可变因素,以及我们因此可能采取的替代方案。
“分步”指令:这是一组常用命令序列,例如像移动某个分支就属于一条既定的“分
为什么要用工作流
Git非常灵活。可为多种不同的角色所用,从偶尔需要版本化少量
管理员,到 Linux内核项目中的上百个开发人员,一切皆有可能。当然,这种灵活性不是没
有代价的。在开始用Git来开展工作之前,你还必须要做一组决定。例如以下几种。
Gi中固然已经是分布式版本库。但你是真的打算只在本地工作,还是更思意建立
个中央版本库?
Git支持push和pu两种数据传输类型,但我们需要同时使用它们吗?如果让你选,
你会选哪一个?为什么不是另一个?
。分支与合并是Git中两个强大的功能。但是,我们应该开多少个分支呢?是根据每个
软件功能来开?还是针对每个发行版来开?还是只该有一个分支?
为了便于入门,下面我们来总结一下工作流及其作用
工作流指的是相关项目的ri常操作规程
#############################################
|
|