《代码管理核心技术及实践》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:刘冉然,肖然,覃宇著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2018
  • ISBN:9787121328497
  • 页数:210 页
图书介绍:所有的计算机程序开发人员都会面临代码的问题,众多的代码如何存储,如何同步更新,需要专门的技术及工具。本书通过案例和实践方案总结不同规模和类型的团队应该如何进行代码管理,其中包括代码库策略,代码分支策略,代码提交策略,代码评审策略,代码集成策略等。通过对于一个虚拟团队和项目从初期小团队小项目开始,逐步发展为中大型团队,最后随着业务的发展再逐步发展为分布式团队的过程中分别如何管理代码,如何从集中式的代码管理切换为分布式的代码管理等实践,并且总结不同类型团队的代码管理模型。

第1部分 基础与传统 2

第1章 代码版本管理工具与系统 2

1.1引言 2

1.2代码版本管理工具的历史 3

1.2.1第1代:本地代码管理 3

1.2.2第2代:中心服务器代码管理 3

1.2.3第3代:分布式代码管理 4

1.3常用的代码管理工具 5

1.3.1 Perforce 5

1.3.2 Subversion 6

1.3.3 Git 6

1.3.4 Mercurial 7

1.3.5 Microsoft GVFS(Git Virtual File System) 7

1.4常用的代码管理系统 8

1.4.1 Virtual SVN Server 9

1.4.2 GitLab Server 9

1.4.3 Gerrit Server 10

1.5从Subversion迁移到Git的常用工具和方法 11

1.5.1 SubGit 11

1.5.2 git-svn 12

1.5.3手动 12

1.6常用云端代码管理系统 13

1.6.1 Sourceforge和Google Code 13

1.6.2 GitHub 14

1.6.3 GitLab和Bitbucket 14

1.6.4 Coding、码云、阿里云Code 15

第2章 独立小型团队 17

2.1启程:团队与项目 17

2.2痛点与需求 18

2.2.1如何选择和搭建Subversion Server 18

2.2.2定制代码库结构 20

2.2.3分支策略 22

2.2.4日常工作模式 24

2.2.5备份策略 26

2.3阿里云Code 27

2.3.1将内网Subversion迁移到阿里云Code 28

2.3.2权限管理 31

2.3.3日常工作模式 32

2.3.4备份方案 33

2.4小团队代码管理的经典模型 34

第3章 传统中大型团队 36

3.1传统大型团队的特点 36

3.2独立大型团队在代码管理上的痛点与需求 38

3.3大型团队代码管理案例 39

3.3.1代码模块依赖管理 41

3.3.2建立相关运作机制 44

3.3.3建立原子提交的纪律 46

3.3.4建立持续集成守护机制 47

3.3.5大型团队代码管理小结 51

3.4大型团队的代码服务器迁移 51

第2部分 当前与流行 58

第4章 分布式中大型团队 58

4.1分布式中大型团队的特点 58

4.2分布式中大型团队在代码管理上的痛点与需求 59

4.2.1离线代码管理 60

4.2.2在线代码审查 61

4.2.3对代码进行分布式权限管理 66

4.2.4对代码进行分布式提交和集成 73

4.3代码仓库拆分与集成 74

4.3.1优化单代码仓库 77

4.3.2代码仓库的拆分 87

4.3.3代码仓库的集成 91

4.3.4小结 122

4.4分支策略 123

4.4.1主干开发分支策略 124

4.4.2应对并行开发 132

4.4.3定制分支策略 147

4.5代码库热备份 150

4.5.1服务器端热备份方案 150

4.5.2客户端热备份方案 151

4.6案例:Android定制化系统开发 151

4.6.1项目背景 151

4.6.2项目及其代码管理介绍 152

4.6.3分支策略 155

4.7多产品线 157

4.7.1多产品线介绍 158

4.7.2多产品线开发的困境 158

4.7.3多产品线解决方案 158

4.8超大型分布式团队 166

第3部分 发展与未来 172

第5章 云时代微服务大型分布式团队 172

5.1云时代和微服务架构 172

5.2 Everything as Code(一切即代码) 173

5.3代码管理团队自治 175

5.3.1围绕团队的代码库管理 177

5.3.2围绕服务的代码库管理 177

5.4微服务架构下的代码管理挑战 179

5.5微服务代码管理实例 180

第6章 开源项目与开源社区 184

6.1开源软件 184

6.1.1开源软件的特点 185

6.1.2开源软件和社区 185

6.1.3开源软件和商业 186

6.1.4开源软件的代码管理 186

6.2开源社区中的开源项目 187

6.2.1简介 187

6.2.2代码管理模型 187

6.2.3典型的大型分布式开源项目 189

6.3企业中的开源项目 193

6.3.1简介 193

6.3.2代码管理模型 193

6.4 GitHub中的开源项目实践 195

6.4.1分支管理 195

6.4.2分库管理 197

6.4.3把公开代码库转换成私有代码库 203

6.4.4 GitHub的分支与复刻 205

参考文献 207

名词解释 209