Git軟體開發實戰

Git軟體開發實戰

《Git軟體開發實戰》是2017年10月1日清華大學出版社出版的圖書,作者是(美)Brent Laster。

基本介紹

  • 中文名:Git軟體開發實戰 
  • 作者:(美)Brent Laster
  • 譯者:蒲成
  • 出版社:清華大學出版社
  • 出版時間:2017年10月01日
  • 定價:79.8 元
  • ISBN:9787302479918
內容簡介,目錄,

內容簡介

藉助Git的強大功能簡單化開發周期《Git軟體開發實戰》一書提供了在使用Git這一流行的軟體開發工具方面的有效方法,並且為新用戶和資深用戶提供了新指導。《Git軟體開發實戰》包含針對傳統系統的廣泛探討,以及獨特於Git的有助於在識別和規劃差異時借鑑已有技能的注意事項。書中大量的示例和圖示旨在強化關鍵的概念以及增強用戶的理解。《Git軟體開發實戰》專注於實踐並且超越了技術教程,能助你將Git模型集成到現實環境的工作流中,是快速提升學習效率的寶貴資源。

目錄

第Ⅰ部分理解Git相關概念
第1章什麼是Git 3
1.1Git的歷史 4
1.2行業標準工具 4
1.3Git生態系統 5
1.3.1核心的Git 5
1.3.2Git託管站點 6
1.3.3自託管軟體包 7
1.3.4易用的包 7
1.3.5外掛程式 9
1.3.6包含Git的工具 9
1.3.7Git庫 9
1.4Git的優勢和挑戰 10
1.4.1優勢 10
1.4.2挑戰 12
1.5本章小結 15
第2章關鍵概念 17
2.1設計概念:面向用戶的 17
2.1.1集中式模型 17
2.1.2分散式模型 18
2.2設計概念:內部的 19
2.2.1差異增量存儲 20
2.2.2快照存儲 20
2.2.3Git的存儲需求 21
2.3倉庫設計注意事項 22
2.3.1倉庫範圍 23
2.3.2檔案範圍 24
2.3.3共享代碼 25
2.4本章小結 26
第3章Git升級模型 27
3.1Git的級別 27
3.1.1開發-測試-生產和Git 27
3.1.2移動內容的核心Git命令 34
3.2本章小結 36
3.3關於連線實驗課程1:
安裝Git 36
連線實驗課程1:安裝Git 37
第Ⅱ部分使用Git
第4章配置和設定 43
4.1在Git中執行命令 43
4.1.1運算元類型 44
4.1.2高層命令和底層命令的
對比 45
4.1.3指定參數 47
4.1.4自動完成 47
4.2配置Git 48
4.2.1告知Git你的身份 49
4.2.2配置範圍 50
4.2.3默認的編輯器 53
4.2.4設定行結束符 54
4.2.5別名 55
4.2.6Windows檔案系統快取 56
4.3初始化倉庫 56
4.3.1gitinit 56
4.3.2gitclone 57
4.4高級主題 58
4.4.1gitinit揭秘 58
4.4.2進一步深入了解Git倉庫 59
4.4.3將config命令映射到
配置檔案 60
4.4.4創建參數化別名 61
4.5本章小結 63
第5章變得高效 65
5.1獲得幫助 65
5.2多倉庫模型 67
5.3添加內容以便追蹤——add 69
5.4完成變更——提交 77
5.4.1先決條件 78
5.4.2提交範圍 79
5.5將一切結合在一起 79
5.5.1修正提交 80
5.5.2提交的結果 82
5.6高級主題 84
5.6.1使用--verbose選項 85
5.6.2完整的訊息提交過程 85
5.6.3自動更正和自動執行 86
5.7本章小結 87
5.8關於連線實驗課程2:創建和
探究Git倉庫並且管理內容 87
連線實驗課程2:創建和探究Git
倉庫並且管理內容 89
第6章追蹤變更 95
6.1gitstatus 95
6.1.1具有狀態的工作流示例 96
6.1.2status命令的簡要形式 100
6.2gitdiff 102
6.2.1Git中的重要符號名稱 102
6.2.2如何思考Git進行對比的
方法 102
6.2.3僅顯示有差異的檔案
名稱 107
6.2.4word-diff 107
6.2.5忽略非關鍵變更 107
6.2.6對比兩次提交 109
6.2.7可視化對比 111
6.2.8其他的對比技巧 114
6.3本章小結 115
6.4連線實驗課程3:通過檔案
狀態生命周期追蹤內容 116
連線實驗課程3:通過檔案狀態
生命周期追蹤內容 117
第7章處理隨時間推移而出現的
變更以及使用標籤 121
7.1log命令 121
7.1.1常用的顯示和過濾選項 122
7.1.2時間限制選項 123
7.1.3按檔案和路徑顯示歷史 124
7.1.4日誌輸出格式 125
7.1.5搜尋歷史 126
7.2gitblame 127
7.3可視化地查看歷史 130
7.4標籤 131
7.4.1查看標籤詳情 132
7.4.2修改標籤 132
7.4.3簡單的標籤示例 133
7.5撤消歷史中的變更 134
7.5.1reset——回滾變更 134
7.5.2完全重置本地環境 135
7.5.3revert——消除變更 136
7.6高級主題 139
7.6.1簽署提交和標籤 139
7.6.2引用日誌 141
7.7本章小結 143
7.8關於連線實驗課程4:使用
Git歷史、標籤和別名 143
連線實驗課程4:使用Git歷史、
標籤和別名 145
第8章處理本地分支 149
8.1什麼是分支? 149
8.1.1來自另一個源管理系統的
示例 150
8.1.2分支的Git模型 150
8.1.3創建一個分支 151
8.1.4簽出一個分支 152
8.1.5將內容添加到分支 153
8.1.6一個工作目錄——多個
分支 154
8.1.7獲得關於分支的信息 157
8.1.8刪除或重命名一個分支 158
8.1.9使用分支進行開發 161
8.2高級主題 167
8.2.1簽出非分支提交 168
8.2.2簽出單獨的檔案 173
8.3本章小結 174
8.4連線實驗課程5:處理
分支 174
連線實驗課程5:處理分支 175
第9章合併內容 177
9.1合併的基礎 177
9.1.1merge命令 178
9.1.2為合併做準備 178
9.1.3合併的類型 178
9.1.4變基——合併歷史 182
9.1.5櫻桃揀選 185
9.1.6櫻桃揀選和變基之間的
差異 188
9.1.7合併操作 189
9.2處理衝突 192
9.2.1合併處理是一種狀態 192
9.2.2衝突的錯誤訊息 193
9.2.3終止操作 194
9.2.4處理衝突——工作流 194
9.2.5解決選項和策略 198
9.3可視化合併 203
9.3.1選擇一款合併工具 205
9.3.2讓合併工具可供Git使用 206
9.4高級主題 206
9.4.1用於衝突標記的可選
樣式 207
9.4.2高級變基場景 208
9.4.3互動式變基 213
9.5本章小結 220
9.6連線實驗課程6:合併實踐 220
連線實驗課程6:合併實踐 221
第10章Git中的支持檔案 223
10.1Git屬性檔案 224
10.1.1Git屬性檔案的作用 224
10.1.2Git屬性的範圍 224
10.1.3檔案格式 226
10.1.4常見用例 226
10.1.5獲取檔案的屬性信息 232
10.2Git忽略檔案 233
10.2.1Git忽略的範圍 233
10.2.2檔案格式 234
10.2.3獲取檔案的忽略信息 236
10.3本章小結 236
第11章用Git做更多的事情 239
11.1修改本地環境中檔案和
目錄的布局 239
11.1.1儲藏 240
11.1.2暫存命令 246
11.1.3mv 246
11.1.4rm 247
11.2用於搜尋的命令 248
11.2.1grep 248
11.2.2Git日誌搜尋 251
11.3為變更處理補丁和存檔 253
11.3.1archive 254
11.3.2bundle 254
11.3.3通過電子郵件共享
補丁 256
11.3.4apply 257
11.3.5am 257
11.3.6用郵件傳送補丁檔案 258
11.4用於清理的命令 260
11.4.1clean 260
11.4.2gc 262
11.4.3notes 263
11.5高級主題 265
11.5.1filter-branch 265
11.5.2rev-list 265
11.5.3bisect 272
11.5.4rerere 279
11.6本章小結 287
11.7連線實驗課程7:刪除、
重命名和儲藏 287
連線實驗課程7:刪除、重命名和
儲藏 289
第12章理解遠程——分支和操作 293
12.1遠程 293
12.1.1遠程訪問協定 295
12.1.2remote命令 297
12.1.3Git如何與遠程環境
互動 299
12.1.4遠程追蹤分支 299
12.1.5gitclone 300
12.1.6查看關於遠程分支的
信息 303
12.1.7push 307
12.1.8fetch 315
12.1.9pull 317
12.2本章小結 320
12.3連線實驗課程8:設定
GitHub賬戶並且克隆倉庫 320
連線實驗課程8:設定GitHub賬戶
並且克隆倉庫 321
第13章理解遠程——變更工作流 323
13.1Git中基本的衝突以及
合併解決工作流 324
13.2託管倉庫 336
13.2.1用於使用Git進行
協作的模型 336
13.2.2對所有內容進行匯總 340
13.3本章小結 341
13.4連線實驗課程9:對遠程
倉庫使用整體工作流 342
連線實驗課程9:對遠程倉庫使用
整體工作流 343
第14章處理Git中的樹和模組 347
14.1工作樹 347
14.1.1添加一棵工作樹 348
14.1.2列出工作樹 350
14.1.3精簡工作樹 351
14.2子模組 352
14.2.1理解子模組如何工作 353
14.2.2添加子模組 353
14.2.3判定子模組狀態 355
14.2.4處理多個子模組 359
14.2.5從子模組的遠程更新
子模組 359
14.2.6查看子模組差異 361
14.2.7超級項目與子模組
對比 362
14.2.8子模組的問題 364
14.2.9更新子模組引用 365
14.2.10在超級項目被更新後
更新子模組 366
14.2.11推送來自子模組的
變更 368
14.2.12子模組與合併 369
14.2.13註銷一個子模組 370
14.3子樹 370
14.3.1添加一個項目作為
子樹 371
14.3.2更新子樹 374
14.3.3使用子樹分隔功能 374
14.3.4從分隔內容中創建
一個新的項目 375
14.3.5子樹推送 376
14.4本章小結 376
14.5連線實驗課程 376
14.5.1連線實驗課程10:使用
工作樹 376
14.5.2連線實驗課程11:使用
子模組 376
14.5.3連線實驗課程12:使用
子樹 377
連線實驗課程10:使用工作樹 379
連線實驗課程11:使用子模組 381
連線實驗課程12:使用子樹 385
第15章使用Git掛鈎程式擴展
Git功能 389
15.1安裝掛鈎 389
15.2更新掛鈎 390
15.3常用掛鈎屬性 391
15.3.1掛鈎域 391
15.3.2控制工作流的返回碼 391
15.3.3工作目錄訪問 392
15.3.4環境變數 392
15.4掛鈎描述 392
15.4.1applypatch-msg 393
15.4.2pre-applypatch 393
15.4.3post-applypatch 393
15.4.4pre-commit 393
15.4.5prepare-commit-msg 395
15.4.6commit-message 396
15.4.7post-commit 398
15.4.8pre-rebase 399
15.4.9post-checkout 399
15.4.10post-merge 399
15.4.11pre-push 400
15.4.12pre-receive 400
15.4.13update 401
15.4.14post-receive 401
15.4.15post-update 402
15.5其他掛鈎 403
15.5.1push-to-checkout 403
15.5.2pre-auto-gc 403
15.5.3post-rewrite 403
15.6掛鈎快速參考 403
15.7本章小結 405

相關詞條

熱門詞條

聯絡我們