Git权威指南的目录

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Git权威指南的目录相关的知识,希望对你有一定的参考价值。

参考技术A

前 言
第1篇 初识Git
第1章 版本控制的前世和今生/ 2
1.1 黑暗的史前时代/ 2
1.2 CVS—开启版本控制大爆发/ 5
1.3 SVN—集中式版本控制集大成者/ 7
1.4 Git—Linus 的第二个伟大作品/ 9
第2章 爱上 Git 的理由/ 11
2.1 每日工作备份/ 11
2.2 异地协同工作/ 12
2.3 现场版本控制/ 13
2.4 避免引入辅助目录/ 15
2.5 重写提交说明/ 15
2.6 想吃后悔药/ 16
2.7 更好用的提交列表/ 17
2.8 更好的差异比较/ 18
2.9 工作进度保存/ 18
2.10 代理SVN提交实现移动式办公/ 19
2.11 无处不在的分页器/ 20
2.12 快/ 21
第3章 Git的安装和使用/ 22
3.1 在Linux 下安装和使用 Git/ 22
3.1.1 包管理器方式安装/ 22
3.1.2 从源代码进行安装/ 23
3.1.3 从Git版本库进行安装/ 23
3.1.4 命令补齐/ 25
3.1.5 中文支持/ 25
3.2 在Mac OS X 下安装和使用 Git/ 26
3.2.1 以二进制发布包的方式安装/ 26
3.2.2 安装 Xcode/ 27
3.2.3 使用 Homebrew 安装 Git/ 29
3.2.4 从Git源码进行安装/ 29
3.2.5 命令补齐/ 30
3.2.6 其他辅助工具的安装/ 30
3.2.7 中文支持/ 31
3.3 在Windows 下安装和使用 Git(Cygwin篇)/ 31
3.3.1 安装 Cygwin/ 32
3.3.2 安装 Git/ 36
3.3.3 Cygwin 的配置和使用/ 37
3.3.4 Cygwin 下 Git 的中文支持/ 40
3.3.5 Cygwin 下 Git 访问 SSH 服务/ 41
3.4 Windows 下安装和使用 Git(msysGit篇)/ 45
3.4.1 安装 msysGit/ 46
3.4.2 msysGit 的配置和使用/ 48
3.4.3 msysGit中shell环境的中文支持/ 49
3.4.4 msysGit中Git的中文支持/ 50
3.4.5 使用 SSH 协议/ 51
3.4.6 TortoiseGit 的安装和使用/ 52
3.4.7 TortoiseGit 的中文支持/ 55
第2篇 Git独奏
第4章 Git 初始化/ 58
4.1 创建版本库及第一次提交/ 58
4.2 思考:为什么工作区根目录下有一个 .git 目录/ 60
4.3 思考:git config 命令的各参数有何区别/ 63
4.4 思考:是谁完成的提交/ 65
4.5 思考:随意设置提交者姓名,是否太不安全/ 67
4.6 思考:命令别名是干什么的/ 68
4.7 备份本章的工作成果/ 69
第5章 Git 暂存区/ 70
5.1 修改不能直接提交吗/ 70
5.2 理解 Git 暂存区(stage)/ 76
5.3 Git Diff 魔法/ 78
5.4 不要使用 git commit -a/ 81
5.5 搁置问题,暂存状态/ 82
第6章 Git对象/ 83
6.1 Git对象库探秘/ 83
6.2 思考:SHA1 哈希值到底是什么,是如何生成的/ 88
6.3 思考:为什么不用顺序的数字来表示提交/ 90
第7章 Git 重置/ 93
7.1 分支游标master探秘/ 93
7.2 用 reflog 挽救错误的重置/ 95
7.3 深入了解git reset命令/ 96
第8章 Git 检出/ 99
8.1 HEAD 的重置即检出/ 99
8.2 挽救分离头指针/ 102
8.3 深入了解 git checkout 命令/ 103
第9章 恢复进度/ 105
9.1 继续暂存区未完成的实践/ 105
9.2 使用 git stash/ 108
9.3 探秘 git stash/ 109
第10章 Git 基本操作/ 114
10.1 先来合个影/ 114
10.2 删除文件/ 114
10.2.1 本地删除不是真的删除/ 115
10.2.2 执行 git rm 命令删除文件/ 116
10.2.3 命令git add -u快速标记删除/ 117
10.3 恢复删除的文件/ 118
10.4 移动文件/ 119
10.5 一个显示版本号的 Hello World/ 120
10.6 使用 git add -i 选择性添加/ 122
10.7 Hello World 引发的新问题/ 124
10.8 文件忽略/ 125
10.9 文件归档/ 129
第11章 历史穿梭/ 130
11.1 图形工具:gitk/ 130
11.2 图形工具:gitg/ 131
11.3 图形工具:qgit/ 135
11.4 命令行工具/ 140
11.4.1 版本表示法:git rev-parse/ 141
11.4.2 版本范围表示法:git rev-list/ 144
11.4.3 浏览日志:git log/ 146
11.4.4 差异比较:git diff/ 150
11.4.5 文件追溯:git blame/ 151
11.4.6 二分查找:git bisect/ 152
11.4.7 获取历史版本/ 156
第12章 改变历史/ 157
12.1 悔棋/ 157
12.2 多步悔棋/ 159
12.3 回到未来/ 161
12.3.1 时间旅行一/ 162
12.3.2 时间旅行二/ 167
12.3.3 时间旅行三/ 171
12.4 丢弃历史/ 174
12.5 反转提交/ 177
第13章 Git 克隆/ 179
13.1 鸡蛋不装在一个篮子里/ 179
13.2 对等工作区/ 180
13.3 克隆生成裸版本库/ 183
13.4 创建生成裸版本库/ 184
第14章 Git库管理/ 187
14.1 对象和引用哪里去了/ 187
14.2 暂存区操作引入的临时对象/ 189
14.3 重置操作引入的对象/ 191
14.4 Git管家:git-gc/ 193
14.5 Git管家的自动执行/ 196
第3篇 Git和声
第15章 Git协议与工作协同/ 200
15.1 Git 支持的协议/ 200
15.2 多用户协同的本地模拟/ 202
15.3 强制非快进式推送/ 203
15.4 合并后推送/ 207
15.5 禁止非快进式推送/ 208
第16章 冲突解决/ 210
16.1 拉回操作中的合并/ 210
16.2 合并一:自动合并/ 212
16.2.1 修改不同的文件/ 212
16.2.2 修改相同文件的不同区域/ 214
16.2.3 同时更改文件名和文件内容/ 215
16.3 合并二:逻辑冲突/ 217
16.4 合并三:冲突解决/ 218
16.4.1 手工编辑完成冲突解决/ 221
16.4.2 图形工具完成冲突解决/ 221
16.5 合并四:树冲突/ 225
16.5.1 手工操作解决树冲突/ 227
16.5.2 交互式解决树冲突/ 228
16.6 合并策略/ 230
16.7 合并相关的设置/ 231
第17章 Git 里程碑/ 233
17.1 显示里程碑/ 234
17.2 创建里程碑/ 236
17.2.1 轻量级里程碑/ 237
17.2.2 带说明的里程碑/ 238
17.2.3 带签名的里程碑/ 239
17.3 删除里程碑/ 242
17.4 不要随意更改里程碑/ 243
17.5 共享里程碑/ 243
17.6 删除远程版本库的里程碑/ 246
17.7 里程碑命名规范/ 247
第18章 Git 分支/ 253
18.1 代码管理之殇/ 253
18.1.1 发布分支/ 253
18.1.2 特性分支/ 256
18.1.3 卖主分支/ 257
18.2 分支命令概述/ 258
18.3 “Hello World”开发计划/ 259
18.4 基于特性分支的开发/ 260
18.4.1 创建分支 user1/getopt/ 261
18.4.2 创建分支 user2/i18n/ 262
18.4.3 开发者 user1 完成功能开发/ 263
18.4.4 将 user1/getopt 分支合并到主线/ 264
18.5 基于发布分支的开发/ 265
18.5.1 创建发布分支/ 266
18.5.2 开发者 user1 工作在发布分支/ 267
18.5.3 开发者 user2 工作在发布分支/ 268
18.5.4 开发者 user2 合并推送/ 270
18.5.5 发布分支的提交合并到主线/ 271
18.6 分支变基/ 275
18.6.1 完成 user2/i18n 特性分支的开发/ 275
18.6.2 分支 user2/i18n 变基/ 277
第19章  远程版本库/ 284
19.1 远程分支/ 284
19.2 分支追踪/ 287
19.3 远程版本库/ 290
19.4 PUSH 和 PULL 操作与远程版本库/ 292
19.5 里程碑和远程版本库/ 294
19.6 分支和里程碑的安全性/ 294
第20章 补丁文件交互/ 296
20.1 创建补丁/ 296
20.2 应用补丁/ 297
20.3 StGit 和 Quilt/ 300
20.3.1 StGit/ 300
20.3.2 Quilt/ 304
第4篇 Git协同模型
第21章 经典Git协同模型/ 308
21.1 集中式协同模型/ 308
21.1.1 传统集中式协同模型/ 309
21.1.2 Gerrit 特殊的集中式协同模型/ 310
21.2 金字塔式协同模型/ 311
21.2.1 贡献者开放只读版本库/ 312
21.2.2 以补丁方式贡献代码/ 313
第22章 Topgit 协同模型/ 314
22.1 作者版本控制系统的三个里程碑/ 314
22.2 Topgit 原理/ 316
22.3 Topgit 的安装/ 317
22.4 Topgit 的使用/ 319
22.5 用Topgit方式改造Topgit/ 330
22.6 Topgit 使用中的注意事项/ 334
第23章 子模组协同模型/ 336
23.1 创建子模组/ 336
23.2 克隆带子模组的版本库/ 339
23.3 在子模组中修改和子模组的更新/ 340
23.4 隐性子模组/ 343
23.5 子模组的管理问题/ 345
第24章 子树合并/ 347
24.1 引入外部版本库/ 347
24.2 子目录方式合并外部版本库/ 349
24.3 利用子树合并跟踪上游改动/ 351
24.4 子树拆分/ 353
24.5 git-subtree 插件/ 353
第25章 Android 式多版本库协同/ 356
25.1 关于 repo/ 357
25.2 安装 repo/ 357
25.3 repo和清单库的初始化/ 359
25.4 清单库和清单文件/ 360
25.5 同步项目/ 361
25.6 建立 Android 代码库本地镜像/ 363
25.7 repo 的命令集/ 365
25.8 repo 命令的工作流/ 370
25.9 好东西不能 Android 独享/ 371
25.9.1 repo+Gerrit 模式/ 371
25.9.2 repo 无审核模式/ 371
25.9.3 改进的 repo 无审核模式/ 372
第26章 Git 和 SVN 协同模型/ 378
26.1 使用 git-svn 的一般流程/ 380
26.2 git-svn 的奥秘/ 386
26.2.1 Git 库配置文件的扩展及分支映射/ 387
26.2.2 Git工作分支和 Subversion 如何对应/ 388
26.2.3 其他辅助文件/ 390
26.3 多样的 git-svn 克隆模式/ 390
26.4 共享 git-svn 的克隆库/ 393
26.5 git-svn 的局限/ 394
第5篇 搭建Git服务器
第27章 使用 HTTP 协议/ 398
27.1 哑传输协议/ 398
27.2 智能 HTTP 协议/ 400
27.3 Gitweb 服务器/ 401
27.3.1 Gitweb的安装/ 402
27.3.2 Gitweb的配置/ 403
27.3.3 版本库的 Gitweb 相关设置/ 404
27.3.4 即时Gitweb服务/ 405
第28章 使用 Git 协议/ 406
28.1 Git 协议语法格式/ 406
28.2 Git 服务软件/ 406
28.3 以 inetd 方式配置运行/ 406
28.4 以 runit 方式配置运行/ 407
第29章 使用 SSH 协议/ 409
29.1 SSH 协议语法格式/ 409
29.2 服务架设方式比较/ 409
29.3 关于 SSH 公钥认证/ 411
29.4 关于 SSH 主机别名/ 411
第30章 Gitolite 服务架设/ 413
30.1 安装Gitolite/ 414
30.1.1 服务器端创建专用账号/ 414
30.1.2 Gitolite 的安装/升级/ 415
30.1.3 关于 SSH 主机别名/ 417
30.1.4 其他的安装方法/ 418
30.2 管理 Gitolite/ 419
30.2.1 管理员克隆 gitolite-admin 管理库/ 419
30.2.2 增加新用户/ 420
30.2.3 更改授权/ 422
30.3 Gitolite 授权详解/ 423
30.3.1 授权文件的基本语法/ 423
30.3.2 定义用户组和版本库组/ 424
30.3.3 版本库ACL/ 424
30.3.4 Gitolite 授权机制/ 426
30.4 版本库授权案例/ 427
30.4.1 对整个版本库进行授权/ 427
30.4.2 通配符版本库的授权/ 428
30.4.3 用户自己的版本库空间/ 429
30.4.4 对引用的授权:传统模式/ 430
30.4.5 对引用的授权:扩展模式/ 430
30.4.6 对引用的授权:禁用规则的使用/ 431
30.4.7 用户分支/ 431
30.4.8 对路径的写授权/ 432
30.5 创建新版本库/ 432
30.5.1 在配置文件中出现的版本库,即时生成/ 433
30.5.2 通配符版本库,管理员通过推送创建/ 434
30.5.3 直接在服务器端创建/ 435
30.6 对 Gitolite 的改进/ 435
30.7 Gitolite 功能拓展/ 436
30.7.1 版本库镜像/ 436
30.7.2 Gitweb 和 Git daemon 支持/ 438
30.7.3 其他功能拓展和参考/ 439
第31章 Gitosis 服务架设/ 441
31.1 安装 Gitosis/ 442
31.1.1 Gitosis 的安装/ 442
31.1.2 服务器端创建专用账号/ 442
31.1.3 Gitosis 服务初始化/ 443
31.2 管理 Gitosis/ 443
31.2.1 管理员克隆 gitolit-admin 管理库/ 443
31.2.2 增加新用户/ 444
31.2.3 更改授权/ 446
31.3 Gitosis 授权详解/ 447
31.3.1 Gitosis 默认设置/ 447
31.3.2 管理版本库 gitosis-admin/ 447
31.3.3 定义用户组和授权/ 448
31.3.4 Gitweb 整合/ 449
31.4 创建新版本库/ 449
31.5 轻量级管理的 Git 服务/ 450
第32章 Gerrit 代码审核服务器/ 452
32.1 Gerrit 的实现原理/ 452
32.2 架设 Gerrit 的服务器/ 456
32.3 Gerrit 的配置文件/ 461
32.4 Gerrit 的数据库访问/ 462
32.5 立即注册为 Gerrit 管理员/ 464
32.6 管理员访问 SSH 的管理接口/ 467
32.7 创建新项目/ 468
32.8 从已有的 Git 库创建项目/ 472
32.9 定义评审工作流/ 473
32.10 Gerrit 评审工作流实战/ 477
32.10.1 开发者在本地版本库中工作/ 477
32.10.2 开发者向审核服务器提交/ 478
32.10.3 审核评审任务/ 478
32.10.4 评审任务没有通过测试/ 480
32.10.5 重新提交新的补丁集/ 482
32.10.6 新修订集通过评审/ 483
32.10.7 从远程版本库更新/ 485
32.11 更多 Gerrit 参考/ 486
第33章 Git 版本库托管/ 487
33.1 Github/ 487
33.2 Gitorious/ 489
第6篇 迁移到Git
第34章 CVS版本库到Git的迁移/ 492
34.1 安装cvs2svn(含 cvs2git)/ 492
34.1.1 Linux下cvs2svn的安装/ 492
34.1.2 Mac OS X 下 cvs2svn 的安装/ 493
34.2 版本库转换的准备工作/ 494
34.2.1 版本库转换注意事项/ 494
34.2.2 文件名乱码问题/ 494
34.2.3 提交说明乱码问题/ 494
34.3 版本库转换/ 496
34.3.1 配置文件解说/ 496
34.3.2 运行cvs2git完成转换/ 500
34.4 迁移后的版本库检查/ 501
第35章 更多版本控制系统的迁移/ 502
35.1 SVN版本库到Git的迁移/ 502
35.2 Hg 版本库到Git的迁移/ 503
35.3 通用版本库迁移/ 505
35.4 Git 版本库整理/ 511
35.4.1 环境变量过滤器/ 513
35.4.2 树过滤器/ 513
35.4.3 暂存区过滤器/ 513
35.4.4 父节点过滤器/ 514
35.4.5 提交说明过滤器/ 514
35.4.6 提交过滤器/ 515
35.4.7 里程碑名字过滤器/ 516
35.4.8 子目录过滤器/ 516
第7篇 Git的其他应用
第36章 etckeeper/ 518
36.1 安装 etckeeper/ 518
36.2 配置 etckeeper/ 519
36.3 使用 etckeeper/ 519
第37章 Gistore/ 520
37.1 Gistore 的安装/ 520
37.1.1 软件依赖/ 520
37.1.2 从源码安装 Gistore/ 521
37.1.3 用 easy_install 安装/ 521
37.2 Gistore 的使用/ 522
37.2.1 创建并初始化备份库/ 522
37.2.2 Gistore 的配置文件/ 523
37.2.3 Gistore 的备份项管理/ 524
37.2.4 执行备份任务/ 525
37.2.5 查看备份日志/ 525
37.2.6 查看及恢复备份数据/ 527
37.2.7 备份回滚及设置/ 528
37.2.8 注册备份任务别名/ 529
37.2.9 自动备份:crontab/ 529
37.3 Gistore 双机备份/ 529
第38章 补丁中的二进制文件/ 531
38.1 Git 版本库中二进制文件变更的支持/ 531
38.2 对非 Git 版本库中二进制文件变更的支持/ 535
38.3 其他工具对 Git 扩展补丁文件的支持/ 536
第39章 云存储/ 538
39.1 现有云存储的问题/ 538
39.2 Git 式云存储畅想/ 539
第8篇 Git杂谈
第40章 跨平台操作 Git/ 542
40.1 字符集问题/ 542
40.2 文件名大小写问题/ 543
40.3 换行符问题/ 545
第41章 Git 的其他特性/ 549
41.1 属性/ 549
41.1.1 属性定义/ 549
41.1.2 属性文件及优先级/ 550
41.1.3 常用属性介绍/ 552
41.2 钩子和模板/ 557
41.2.1 Git 钩子/ 557
41.2.2 Git 模板/ 562
41.3 稀疏检出和浅克隆/ 563
41.3.1 稀疏检出/ 563
41.3.2 浅克隆/ 566
41.4 嫁接和替换/ 568
41.4.1 提交嫁接/ 568
41.4.2 提交替换/ 568
41.5 Git 评注/ 570
41.5.1 评注的奥秘/ 570
41.5.2 评注相关命令/ 573
41.5.3 评注相关配置/ 574
第9篇 附录
附录A  Git 命令索引/ 576
A.1 常用的Git命令/ 576
A.2 对象库操作相关命令/ 578
A.3 引用操作相关命令/ 578
A.4 版本库管理相关命令/ 579
A.5 数据传输相关命令/ 579
A.6 邮件相关命令/ 580
A.7 协议相关命令/ 580
A.8 版本库转换和交互相关命令/ 581
A.9 合并相关的辅助命令/ 581
A.10 杂项/ 582
附录B Git 与 CVS 面对面/ 583
B.1 面对面访谈录/ 583
B.2 Git 和CVS 命令对照/ 585
附录C Git 与 SVN 面对面/ 587
C.1 面对面访谈录/ 587
C.2  Git 和SVN 命令对照/ 589
附录D Git 与 Hg 面对面/ 592
D.1 面对面访谈录/ 592
D.2 Git和Hg 命令对照/ 593

《Ansible权威指南》目录及技术与运营的“掐架”

本文概要一览:

1. 本篇非技术文章,技术僻朋友不喜勿点

2. 本篇内容为《Ansible权威指南》目录及技术与运营的“掐架”

3. 没有福利





亦或这样的"帮助"

《Ansible权威指南》目录及技术与运营的“掐架”

...够铁了吧!
.....铁了吧!
.......了吧!
.... ....吧!
...........!
............

然并卵!!!
到21:17:05的时候,阅读量终于1000。。。不到,共983个阅读。哎,技术不值钱吗/嘛?小编已哭瞎在厕所,认真的在考虑是不是要将《varnish从菜鸟到专家》的题目得换成《Varnish从没开始到放弃》了。今天小编心情不佳文章是写不动了,不过陆续很多朋友过来问书籍目录和京东没货,让小编受伤的心灵略略有几分安慰。下面小编承上精心准备的目录一份(京东拉下来略做修改就好了~,你们目录都找不到的朋友到底是哪个朝代的呢?!


前方高能,目录较长,各取所需

本书赞誉

前言

第一篇 基础入门篇

第1章Ansible基础入门 2

  • 1.1Ansible是什么 2

  • 1.2Ansible发展史 4

  • 1.3为什么选择Ansible 5

  • 1.4Ansible是如何工作的 6

  • 1.5Ansible通信发展史 8

  • 1.6Ansible应用场景 11

  • 1.7Ansible的安装部署 12


    • 1.7.1PIP方式 13

    • 1.7.2YUM方式 13

    • 1.7.3Apt-get方式 14

    • 1.7.4源码安装方式 14

    • 1.7.5验证安装结果 15

  • 1.8Python多环境扩展管理 16


    • 1.8.1Pyenv的部署与使用 16

    • 1.8.2Virtualenv的部署与使用 18

  • 1.9本章小结 20

第2章Ansible基础元素介绍 21

  • 2.1Ansible目录结构介绍 21

  • 2.2Ansible配置文件解析 23

  • 2.3Ansible命令用法详解 25

  • 2.4Ansible系列命令用法详解与使用场景介绍 28


    • 2.4.1ansible 28

    • 2.4.2ansible-galaxy 29

    • 2.4.3ansible-pull 31

    • 2.4.4ansible-doc 31

    • 2.4.5ansible-playbook 31

    • 2.4.6ansible-vault 32

    • 2.4.7ansible-console 32

  • 2.5Ansible Inventory配置及详解 34


    • 2.5.1定义主机和组 34

    • 2.5.2定义主机变量 35

    • 2.5.3定义组变量 35

    • 2.5.4定义组嵌套及组变量 36

    • 2.5.5多重变量定义 36

    • 2.5.6其他Inventory参数列表 37

  • 2.6Ansible与正则 37

  • 2.7本章小结 39

第3章Ansible Ad-Hoc命令集 40

  • 3.1Ad-Hoc使用场景 40

  • 3.2Ad-Hoc命令集介绍 41


    • 3.2.1Ad-Hoc命令集用法简介 41

    • 3.2.2通过Ad-Hoc查看系统设置 46

    • 3.2.3通过Ad-Hoc研究Ansible的并发特性 47

    • 3.2.4通过Ad-Hoc研究Ansible的模块使用 49

  • 3.3Ad-Hoc组管理和特定主机变更 52


    • 3.3.1Ad-Hoc组定义 52

    • 3.3.2Ad-Hoc配置管理:配置Proxy与Web Servers实践 54

    • 3.3.3Ad-Hoc配置后端:配置NoSQL与Database Servers实践 56

    • 3.3.4Ad-Hoc特定主机变更 57

  • 3.4Ad-Hoc用户与组管理 58


    • 3.4.1Linux用户管理 58

    • 3.4.2Windows用户管理 63

    • 3.4.3应用层用户管理 64
      *3.5本章小结 65

第4章Playbook快速入门 66

  • 4.1Playbook语法简介 66


    • 4.1.1多行缩进 67

    • 4.1.2单行缩写 67

  • 4.2Playbook案例分析 68

  • 4.3Playbook与Shell脚本差异对比 71

  • 4.4Ansible-playbook实战小技巧 71


    • 4.4.1限定执行范围 71

    • 4.4.2用户与权限设置 72

    • 4.4.3Ansible-playbook:其他选项技巧 73

  • 4.5实战一:Ansible部署Node.js企业实践 73


    • 4.5.1添加第三方源 73

    • 4.5.2运行Node.js进程 77

    • 4.5.3Node.js app服务部署总结 78

  • 4.6实战二:Drupal基于LAMP的自动化部署 78


    • 4.6.1定义变量并设置Handlers 79

    • 4.6.2部署LAMP基础服务 80

    • 4.6.3配置Apache 81

    • 4.6.4配置PHP 82

    • 4.6.5配置MySQL 83

    • 4.6.6安装Drush和Composer 84

    • 4.6.7通过Git和Drush安装Drupal 85

    • 4.6.8Drupal部署过程总结 86

  • 4.7实战三:Ansible部署Tomcat企业实战 86


    • 4.7.1定义变量并设置Handlers 86

    • 4.7.2安装Java 87

    • 4.7.3安装Tomcat 8 88

    • 4.7.4安装Apache Solr 89

  • 4.8本章小结 91

第5章Ansible Playbook拓展 92

  • 5.1Handlers 92

  • 5.2环境变量 93

  • 5.3变量 95


    • 5.3.1Playbook 变量 96

    • 5.3.2在Inventory文件中定义变量 97

    • 5.3.3注册变量 98

    • 5.3.4使用高阶变量 98

    • 5.3.5主机变量和组变量 100

    • 5.3.6Facts(收集系统信息) 101

    • 5.3.7Ansible加密模块Vault 104

    • 5.3.8变量优先级 106

  • 5.4if/then/when——流程控制 107


    • 5.4.1Jinja2 正则表达、Python 内置函数和逻辑判断 107

    • 5.4.2变量注册器register 108

    • 5.4.3when条件判断 109

    • 5.4.4changed_when、failed_when条件判断 110

    • 5.4.5ignore_errors条件判断 111

  • 5.5任务间流程控制 111


    • 5.5.1任务委托 111

    • 5.5.2任务暂停 112

  • 5.6交互式提示 112

  • 5.7Tags标签 113

  • 5.8Block块 115

  • 5.9本章小结 116

第二篇 高级进阶篇

第6章Playbook高级技巧进阶 118

  • 6.1巧用 Includes 118


    • 6.1.1Includes使用场景 118

    • 6.1.2Includes用法 119

    • 6.1.3动态 Includes 123

    • 6.1.4Handler Includes使用技巧 123

    • 6.1.5Playbooks Includes使用技巧 124

  • 6.2巧用Roles 124


    • 6.2.1构建Roles 125

    • 6.2.2使用Roles重构Playbooks 125

    • 6.2.3Roles技巧之Handlers:动态变更 129

    • 6.2.4Roles技巧之Files:文件传输 131

    • 6.2.5Roles技巧之Templates:模板替换 133

    • 6.2.6更多复杂的跨平台Roles 135

  • 6.3Jinja2实现模板高度自定义 136


    • 6.3.1Jinja2 For循环 136

    • 6.3.2Jinja2 If条件 137

    • 6.3.3Jinja多值合并 138

    • 6.3.4Jinja default()设定 140

    • 6.3.5Ansible结合Jinja2生成Nginx配置 141

    • 6.3.6Ansible结合Jinja2生成Apache多主机配置 146

    • 6.3.7Jinja2动态变量配置及架构优化 148

  • 6.4Ansible Galaxy 151


    • 6.4.1Ansible-galaxy命令用法 151

    • 6.4.2使用Galaxy 152

  • 6.5本章小结 154

第7章Inventory文件扩展 155

  • 7.1Inventory文件实战 155

  • 7.2独立的Inventory文件 159

  • 7.3Inventory变量 159


    • 7.3.1host_vars目录 160

    • 7.3.2group_vars目录 161

  • 7.4动态Inventory 161

  • 7.5本章小结 168

第8章Ansible插件扩展 169

  • 8.1Ansible 插件使用场景 169

  • 8.2Ansible插件类型 170

  • 8.3如何编写自己的插件 171

  • 8.4插件案例实践 172

  • 8.5本章小结 174

第9章Ansible企业应用实战 175

  • 9.1为新系统添加安全认证SSHKey 175


    • 9.1.1Ansible密码认证 175

    • 9.1.2ssh-copy-id 176

    • 9.1.3Kickstart 177

    • 9.1.4Python Paramiko 178

    • 9.1.5Expect 179

  • 9.2企业高可用架构的Ansible应用 180


    • 9.2.1Playbook目录编排 181

    • 9.2.2高可用架构基于Ansible的自动化实现 181

    • 9.2.3使用Includes衔接各服务配置 188

  • 9.3ELK日志系统基于Ansible的自动化实现 189


    • 9.3.1ELK Server的自动化实现 190

    • 9.3.2ELK Client的自动化实现 192

  • 9.4实时日志系统基于Ansible的自动化实现 192


    • 9.4.1配置概览 192

    • 9.4.2架构部署 193

  • 9.5Zabbix基于Ansible的自动化实现 195


    • 9.5.1Zabbix Server基于Ansible的自动化实现 196

    • 9.5.2Zabbix Agent基于Ansible的自动化实现 199

    • 9.5.3Zabbix Proxy基于Ansible的自动化实现 201

  • 9.6Ansible+Git+GitLab实现自动化发布 202


    • 9.6.1架构概览 203

    • 9.6.2架构部署 203

  • 9.7Docker的Ansible自动化应用 206


    • 9.7.1Docker容器入门 206

    • 9.7.2使用Ansible创建和管理容器 207

    • 9.7.3基于Ansible创建Flask的Docker容器 208

    • 9.7.4数据存储容器配置 210

    • 9.7.5Flask容器配置 211

    • 9.7.6MySQL容器配置 213

    • 9.7.7启动容器 215

  • 9.8本章小结 215

第10章Ansible基于Windows的管理架构 217

  • 10.1Ansible管理机部署安装 218

  • 10.2Windows系统预配置 219

  • 10.3Windows下可用模块 224

  • 10.4Windows Ansible模块使用实战 224

  • 10.5本章小结 226

第11章Ansible安全优化篇 227

  • 11.1SSH与远程连接简介 227


    • 11.1.1Telnet 228

    • 11.1.2RLOGIN、RSH和RCP 228

    • 11.1.3SSH 228

    • 11.1.4SSH的发展和远程访问的未来 229

  • 11.2通信加密 230

  • 11.3禁止root远程登录 231

  • 11.4操作系统简介 232

  • 11.5遵守权限最小化原则 233


    • 11.5.1用户管理 233

    • 11.5.2文件权限管理 233

  • 11.6定期维护更新 234


    • 11.6.1手动更新 234

    • 11.6.2自动定时更新 234

  • 11.7善用Iptables防火墙 236

  • 11.8定期磁盘巡检 238

  • 11.9系统登录日志审记 238

  • 11.10 正确使用SELinux和AppArmor 239

  • 11.11 本章小结 240

第三篇 Web自动化开发篇

第12章Ansible模块编写 242

  • 12.1初步认识Ansible模块 242

  • 12.2Ansible简单模块编写 243

  • 12.3模块变量添加 245

  • 12.4模块状态返回的标识及应用 246

  • 12.5模块退出状态处理 249

  • 12.6模块其他功能补充 250

  • 12.7Ansible模块API的调用 251

  • 12.8本章小结 265

第13章开发自己的Ansible WebUI 267

  • 13.1搭建Django开发环境 267


    • 13.1.1为什么要使用Web页面做管理 267

    • 13.1.2系统及软件环境 268

  • 13.2Django配置文件详解 269


    • 13.2.1Django的基础配置及运行 269

    • 13.2.2Django的主配置目录介绍 270

    • 13.2.3Django的app目录介绍 271

  • 13.3编写Ansible的Web接口 272

  • 13.4前端基础知识介绍 278


    • 13.4.1HTML和CSS简介 278

    • 13.4.2JavaScript简介 279

  • 13.5Ansible WebUI界面开发 280


    • 13.5.1对接前端页面与Ansible的Web接口 280

    • 13.5.2配置Web页面传参 282

  • 13.6本章小结 285

第14章Web与Ansible结合的常用实例 286

  • 14.1Web方式管理Ansible的Inventory 286


    • 14.1.1重新定制Ansible的Hosts文件规则 286

    • 14.1.2使用ConfigParser解析并生成Ansible Hosts文件 287

    • 14.1.3使用数据库的存储数据生成的Ansible Hosts文件 290

    • 14.1.4通过页面来生成Hosts文件 293

  • 14.2使用celery后台执行任务 301


    • 14.2.1为什么要使用celery 301

    • 14.2.2使用celery的前期准备 301

    • 14.2.3使用celery开始任务 303

    • 14.2.4使用celery取消正在进行的任务 305

  • 14.3运行YML文件并实时读取日志 306

  • 14.4通过页面上传文件并基于Ansible分发 313

  • 14.5在页面上构建YML文件注册中心 316

  • 14.6操作者注册中心界面 324

  • 14.7本章小结 331



《Ansible权威指南》在京东、亚马逊、当当等各大电商均已上架,敬请关注:

  • 京东:


我是彩蛋




还是你懂我,竟然不经提示就拉到最后找彩蛋了。看你如此懂我,那么单身X福利如下:

  1. 图1妹子单身

  2. (问三围的请走开啦)

  3. 美甲行业

  4. BASE上海(非上海本地人)

  5. 靓照当然不能放这里了

《完》


以上是关于Git权威指南的目录的主要内容,如果未能解决你的问题,请参考以下文章

Android开发权威指南的图书目录

PHP与MySQL权威指南的目录

《Git权威指南》读书笔记

JavaScript权威指南 清晰版

《SQL权威指南第4版》中文PDF+英文PDF+《MySQL5权威指南第3版》中文PDF+英文PDF

CSS权威指南的作品目录