<dl id="rrddz"><i id="rrddz"></i></dl><dl id="rrddz"><i id="rrddz"></i></dl><noframes id="rrddz">
<dl id="rrddz"><i id="rrddz"><font id="rrddz"></font></i></dl><video id="rrddz"></video>
<video id="rrddz"><i id="rrddz"></i></video><dl id="rrddz"><delect id="rrddz"><font id="rrddz"></font></delect></dl><dl id="rrddz"><i id="rrddz"></i></dl><dl id="rrddz"><i id="rrddz"></i></dl>
<video id="rrddz"><i id="rrddz"><delect id="rrddz"></delect></i></video>
<dl id="rrddz"></dl>
<dl id="rrddz"><i id="rrddz"></i></dl>
<dl id="rrddz"></dl><dl id="rrddz"><i id="rrddz"></i></dl>
<dl id="rrddz"></dl>
<video id="rrddz"><i id="rrddz"><delect id="rrddz"></delect></i></video><video id="rrddz"><dl id="rrddz"></dl></video>
<dl id="rrddz"></dl>
<i id="rrddz"><i id="rrddz"><delect id="rrddz"></delect></i></i>
<nobr id="rrddz"><video id="rrddz"></video></nobr>
<noframes id="rrddz"><dl id="rrddz"></dl><noframes id="rrddz"><video id="rrddz"></video>

歡迎訪問學兔兔,學習、交流 分享 !

返回首頁 |
當前位置: 首頁 > 書籍手冊>計算機與網絡 >代碼管理核心技術及實踐 劉冉 2018年版

代碼管理核心技術及實踐 劉冉 2018年版

收藏
  • 大?。?span itemprop="fileSize">99.17 MB
  • 語言:中文版
  • 格式: PDF文檔
  • 類別:計算機與網絡
  • 更新日期:2023-06-08
推薦:升級會員 無限下載,節約時間成本!
關鍵詞:代碼   實踐   核心技術   管理   劉冉
資源簡介
代碼管理核心技術及實踐
作者: 劉冉
出版時間:2018年版
內容簡介
  《代碼管理核心技術及實踐》首先通過系統化的介紹和比較,從整體上講解了代碼管理工具和系統的歷史和發展。其次分別從小型團隊、中大型團隊、分布式大團隊、基于微服務的團隊及開源團隊的角度總結了代碼管理的核心技術及實踐經驗,其中包括不同類型的團隊對代碼管理工具和系統的選擇,以及代碼管理的流程、策略和技巧,還有一些代碼管理工具和系統的難點、痛點等,包括如何選擇分支策略、如何管理多產品線的代碼、代碼備份策略,以及如何在大型團隊中將代碼從Subversion遷移到Git等?!洞a管理核心技術及實踐》可幫助讀者在現實中從團隊的大小及代碼管理模式是集中式還是分布式、開源還是閉源等各個角度去了解和思考代碼管理的核心技術和實踐經驗,從而幫助團隊建立起一套高效的代碼管理系統、策略和流程。 《代碼管理核心技術及實踐》的讀者對象主要是每天都需要使用代碼管理工具的程序員、代碼管理工具和系統的管理人員,以及團隊的技術領導人員。
目錄
第1部分 基礎與傳統
第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部分 當前與流行
第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部分 發展與未來
第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
下載地址
无码无套少妇毛多18pxxxx_国产乱码精品一区二区三区麻豆_玉蒲团之玉女心经_天天干夜夜操
<dl id="rrddz"><i id="rrddz"></i></dl><dl id="rrddz"><i id="rrddz"></i></dl><noframes id="rrddz">
<dl id="rrddz"><i id="rrddz"><font id="rrddz"></font></i></dl><video id="rrddz"></video>
<video id="rrddz"><i id="rrddz"></i></video><dl id="rrddz"><delect id="rrddz"><font id="rrddz"></font></delect></dl><dl id="rrddz"><i id="rrddz"></i></dl><dl id="rrddz"><i id="rrddz"></i></dl>
<video id="rrddz"><i id="rrddz"><delect id="rrddz"></delect></i></video>
<dl id="rrddz"></dl>
<dl id="rrddz"><i id="rrddz"></i></dl>
<dl id="rrddz"></dl><dl id="rrddz"><i id="rrddz"></i></dl>
<dl id="rrddz"></dl>
<video id="rrddz"><i id="rrddz"><delect id="rrddz"></delect></i></video><video id="rrddz"><dl id="rrddz"></dl></video>
<dl id="rrddz"></dl>
<i id="rrddz"><i id="rrddz"><delect id="rrddz"></delect></i></i>
<nobr id="rrddz"><video id="rrddz"></video></nobr>
<noframes id="rrddz"><dl id="rrddz"></dl><noframes id="rrddz"><video id="rrddz"></video>