Git权威指南
下载地址: https://pan.baidu.com/s/14FArzIRqvbIXEYDJk9A4ag
扫码上面二维码关注公众号回复100009 获取分享码
本书目录构造如下:
前言
第1篇 初识Git
第1章 版本控制的前世和今生
1.1 光明的史前时代
1.2 CVS——开启版本控制大暴发
1.3 SVN——集中式版本控制集大成者
1.4 Git——Linus的第二个平凡作品
第2章 爱上Git的理由
2.1 每日工作备份
2.2 异地协同工作
2.3 现场版本控制
2.4 防止引入辅助目录
2.5 重写提交阐明
2.6 想吃后悔药
2.7 更好用的提交列表
2.8 更好的差别比拟
2.9 工作进度保留
2.10 代理SVN提交实现移动式办公
2.11 无处不在的分页器
2.12 快
第3章 Git的装置和应用
3.1 在Linux下装置和应用Git
3.2 在Mac OS X下装置和应用Git
3.3 在Windows下装置和应用Git(Cygwin篇)
3.4 Windows下装置和应用Git(msysGit篇)
第2篇 Git合奏
第4章 Git初始化
4.1 创立版本库及第一次提交
4.2 思考:为什么工作区根目录下有一个.git目录
4.3 思考:git config命令的各参数有何区别
4.4 思考:是谁实现的提交
4.5 思考:随便设置提交者姓名,是否太不平安
4.6 思考:命令别名是干什么的
4.7 备份本章的工作成绩
第5章 Git暂存区
5.1 批改不能间接提交吗
5.2 了解Git暂存区(stage)
5.3 Git Diff魔法
5.4 不要应用git commit-a
5.5 搁置问题,暂存状态
第6章 Git对象
6.1 Git对象库探秘
6.2 思考:SHA1哈希值到底是什么,是如何生成的
6.3 思考:为什么不必程序的数字来示意提交
第7章 Git重置
7.1 分支游标master探秘
7.2 用reflog解救谬误的重置
7.3 深刻理解git reset命令
第8章 Git检出
8.1 HEAD的重置即检出
8.2 解救拆散头指针
8.3 深刻理解git checkout命令
第9章 复原进度
9.1 持续暂存区未实现的实际
9.2 应用git stash
9.3 探秘git stash
第10章 Git基本操作
10.1 先来合个影
10.2 删除文件
10.3 复原删除的文件
10.4 挪动文件
10.5 一个显示版本号的Hello World
10.6 应用git add-i选择性增加
10.7 Hello World引发的新问题
10.8 文件疏忽
10.9 文件归档
第11章 历史穿梭
11.1 图形工具:gitk
11.2 图形工具:gitg
11.3 图形工具:qgit
11.4 命令行工具
第12章 扭转历史
12.1 悔棋
12.2 多步悔棋
12.3 回到未来
12.4 抛弃历史
12.5 反转提交
第13章 Git克隆
13.1 鸡蛋不装在一个篮子里
13.2 对等工作区
13.3 克隆生成裸版本库
13.4 创立生成裸版本库
第14章 Git库治理
14.1 对象和援用哪里去了
14.2 暂存区操作引入的长期对象
14.3 重置操作引入的对象
14.4 Git管家:git-gc
14.5 Git管家的主动执行
第3篇 Git和声
第15章 Git协定与工作协同
15.1 Git反对的协定
15.2 多用户协同的本地模仿
15.3 强制非快进式推送
15.4 合并后推送
15.5 禁止非快进式推送
第16章 抵触解决
16.1 拉回操作中的合并
16.2 合并一:主动合并
16.3 合并二:逻辑抵触
16.4 合并三:抵触解决
16.5 合并四:树抵触
16.6 合并策略
16.7 合并相干的设置
第17章 Git里程碑
17.1 显示里程碑
17.2 创立里程碑
17.3 删除里程碑
17.4 不要随便更改里程碑
17.5 共享里程碑
17.6 删除近程版本库的里程碑
17.7 里程碑命名标准
第18章 Git分支
18.1 代码治理之殇
18.2 分支命令概述
18.3 “Hello World”开发计划
18.4 基于个性分支的开发
18.5 基于公布分支的开发
18.6 分支变基
第19章 近程版本库
19.1 近程分支
19.2 分支追踪
19.3 近程版本库
19.4 PUSH和PULL操作与近程版本库
19.5 里程碑和近程版本库
19.6 分支和里程碑的安全性
第20章 补丁文件交互
20.1 创立补丁
20.2 利用补丁
20.3 StGit和Quilt
第4篇 Git协同模型
第21章 经典Git协同模型
21.1 集中式协同模型
21.2 社交网络式协同模型
第22章 Topgit协同模型
22.1 作者版本控制系统的三个里程碑
22.2 Topgit原理
22.3 Topgit的装置
22.4 Topgit的应用
22.5 用Topgit形式革新Topgit
22.6 Topgit应用中的注意事项
第23章 子模组协同模型
23.1 创立子模组
23.2 克隆带子模组的版本库
23.3 在子模组中批改和子模组的更新
23.4 隐性子模组
23.5 子模组的治理问题
第24章 子树合并
24.1 引入内部版本库
24.2 子目录形式合并内部版本库
24.3 利用子树合并跟踪上游改变
24.4 子树拆分
24.5 git-subtree插件
第25章 Android式多版本库协同
25.1 对于repo
25.2 装置repo
25.3 repo和清单库的初始化
25.4 清单库和清单文件
25.5 同步我的项目
25.6 建设Android代码库本地镜像
25.7 repo的命令集
25.8 repo命令的工作流
25.9 好货色不能Android独享
第26章 Git和SVN协同模型
26.1 应用git-svn的个别流程
26.2 git-svn的神秘
26.3 多样的git-svn克隆模式
26.4 共享git-svn的克隆库
26.5 git-svn的局限
第5篇 搭建Git服务器
第27章 应用HTTP协定
27.1 哑传输协定
27.2 智能HTTP协定
27.3 Gitweb服务器
第28章 应用Git协定
28.1 Git协定语法格局
28.2 Git服务软件
28.3 以inetd形式配置运行
28.4 以runit形式配置运行
第29章 应用SSH协定
29.1 SSH协定语法格局
29.2 服务架设形式比拟
29.3 对于SSH公钥认证
29.4 对于SSH主机别名
第30章 Gitolite服务架设
30.1 装置Gitolite
30.2 治理Gitolite
30.3 Gitolite受权详解
30.4 版本库受权案例
30.5 创立新版本库
30.6 对Gitolite的改良
30.7 Gitolite性能拓展
第31章 Gitosis服务架设
31.1 装置Gitosis
31.2 治理Gitosis
31.3 Gitosis受权详解
31.4 创立新版本库
31.5 轻量级治理的Git服务
第32章 Gerrit代码审核服务器
32.1 Gerrit的实现原理
32.2 架设Gerrit的服务器
32.3 Gerrit的配置文件
32.4 Gerrit的数据库拜访
32.5 立刻注册为Gerrit管理员
32.6 管理员拜访SSH的治理接口
32.7 创立新我的项目
32.8 从已有的Git库创立我的项目
32.9 定义评审工作流
32.10 Gerrit评审工作流实战
32.11 更多Gerrit参考
第33章 Git版本库托管
33.1 Github
33.2 Gitorious
第6篇 迁徙到Git
第34章 CVS版本库到Git的迁徙
34.1 装置cvs2svn(含cvs2git)
34.2 版本库转换的筹备工作
34.3 版本库转换
34.4 迁徙后的版本库查看
第35章 更多版本控制系统的迁徙
35.1 SVN版本库到Git的迁徙
35.2 Hg版本库到Git的迁徙
35.3 通用版本库迁徙
35.4 Git版本库整顿
第7篇 Git的其余利用
第36章 etckeeper
36.1 装置etckeeper
36.2 配置etckeeper
36.3 应用etckeeper
第37章 Gistore
37.1 Gistore的装置
37.2 Gistore的应用
37.3 Gistore双机备份
第38章 补丁中的二进制文件
38.1 Git版本库中二进制文件变更的反对
38.2 对非Git版本库中二进制文件变更的反对
38.3 其余工具对Git扩大补丁文件的反对
第39章 云存储
39.1 现有云存储的问题
39.2 Git式云存储畅想
第8篇 Git杂谈
第40章 跨平台操作Git
40.1 字符集问题
40.2 文件名大小写问题
40.3 换行符问题
第41章 Git的其余个性
41.1 属性
41.2 钩子和模板
41.3 稠密检出和浅克隆
41.4 嫁接和替换
41.5 Git评注
第9篇 附录
附录A Git命令索引
A.1 罕用的Git命令
A.2 对象库操作相干命令
A.3 援用操作相干命令
A.4 版本库治理相干命令
A.5 数据传输相干命令
A.6 邮件相干命令
A.7 协定相干命令
A.8 版本库转换和交互相干命令
A.9 合并相干的辅助命令
A.10 杂项
附录B Git与CVS面对面
B.1 面对面访谈录
B.2 Git和CVS命令对照
附录C Git与SVN面对面
C.1 面对面访谈录
C.2 Git和SVN命令对照
附录D Git与Hg面对面
D.1 面对面访谈录
D.2 Git和Hg命令对照