TOP
0
0
【簡體曬書區】 單本79折,5本7折,活動好評延長至5/31,趕緊把握這一波!
Git高手之路(簡體書)
滿額折

Git高手之路(簡體書)

人民幣定價:89 元
定  價:NT$ 534 元
優惠價:87465
領券後再享88折
海外經銷商無庫存,到貨日平均30天至45天
可得紅利積點:13 點
相關商品
商品簡介
作者簡介
目次

商品簡介

Git是一 款免費、開源的分布式版本控制系統,可以對或大或小的項目進行高效的版本管理。時 至 今 日,Git已經在項目開發領域發揮著重要作用,並且得到了廣泛的應用。
本書旨在幫助讀者深入理解Git架構,以及其內部的理念、行為和最佳實踐。全書共分為12章,從基礎知識講起,陸續介紹了項目歷史管理、使用Git進行程序開發、工作區管理、Git協作開發、分支應用進階、集成變更、歷史記錄管理、子項目管理、Git的定制和擴展、Git日常管理、Git最佳實踐等內容。
本書面向所有的Git用戶,全面細緻地向讀者介紹有關Git的各項實用技巧,充分發掘它的潛力,更好地實現項目版本管理。

作者簡介

[波蘭]雅各布·納熱布斯基(Jakub Nar bski )

自Git誕生之初參與了Git的開發工作。他是gitweb子系統(Git原始Web界面)的主要貢獻者之一,是非官方的gitweb維護者。他創造、發佈並分析了2007年到2012年的年度Git用戶調查。您可以在Git Wiki上找到對這些調查的分析內容。他經常在技術問答網站StackOverflow上和他人分享自己的技術專長。
他是Eric Sink的Version Control by Example一書的審校者之一,這也是他在Git領域佔有一席之地的原因。
他是波蘭托倫哥白尼大學數學和計算機科學系的助理教授。他選擇使用Git作為個人和專業工作的版本控制系統,將其作為課程作業的一部分講授給數學和計算機科學系的學生。

目次

第1章 Git應用入門 1
1.1 版本控制與Git 1
1.2 Git簡易示例 2
1.2.1 創建版本庫 2
1.2.2 創建Git版本庫 3
1.2.3 克隆版本庫並添加注釋 4
1.2.4 發佈修改 7
1.2.5 查看歷史版本 7
1.2.6 重命名、移動文件 10
1.2.7 更新版本庫(合併) 11
1.2.8 創建標簽 12
1.2.9 解決合併衝突 14
1.2.10 添加和移除文件 17
1.2.11 撤銷對單個文件的修改 18
1.2.12 創建新分支 19
1.2.13 合併分支(無衝突) 20
1.2.14 撤銷未發佈的合併 21
1.3 小結 22
第2章 項目歷史管理 23
2.1 有向無環圖 23
2.1.1 提交整個工作目錄 25
2.1.2 分支和標簽 26
2.1.3 分支點 28
2.1.4 合併提交 28
2.2 修訂內部查詢 28
2.2.1 HEAD—* 新的修訂版本 29
2.2.2 分支和標簽的引用 29
2.2.3 SHA-1哈希碼及其簡化標識符 30
2.2.4 父引用 32
2.2.5 反向父引用—git的輸出信息描述 32
2.2.6 reflog的簡稱 33
2.2.7 上游遠程跟蹤分支 34
2.2.8 根據提交信息查詢修訂 34
2.3 修訂區間查詢 35
2.3.1 單個修訂內部查詢 35
2.3.2 雙點符號 35
2.3.3 多點符號—包含和排除修訂 37
2.3.4 單個修訂的修訂區間 38
2.3.5 三點符號 38
2.4 歷史記錄查詢 40
2.4.1 限制修訂數量 40
2.4.2 元數據查詢 40
2.4.3 修訂內部變更查詢 43
2.4.4 變更類型查詢 44
2.5 單個文件歷史記錄 44
2.5.1 路徑約束 45
2.5.2 歷史簡化 46
2.5.3 blame—查看文件歷史記錄詳情 46
2.6 使用git bisect命令查找bug 48
2.7 日誌的查詢和格式化輸出 50
2.7.1 預定義和用戶自定義輸出格式 51
2.7.2 包含、格式化和統計變更 52
2.7.3 貢獻統計 54
2.7.4 查看文件修訂 55
2.8 小結 56
第3章 使用Git進行程序開發 58
3.1 新建提交 58
3.1.1 新建提交的DAG視圖 59
3.1.2 索引—提交的暫存區 60
3.1.3 查看已提交的變更 61
3.1.4 可查詢的提交 71
3.1.5 修改提交 73
3.2 使用分支 75
3.2.1 新建分支 76
3.2.2 孤兒分支 77
3.2.3 分支的查詢和切換 77
3.2.4 分支列表 80
3.2.5 分支的回退和複位 80
3.2.6 分支的刪除 82
3.2.7 分支的重命名 83
3.3 小結 83
第4章 工作區管理 84
4.1 忽略文件 85
4.1.1 將文件刻意標記為不跟蹤的 86
4.1.2 確定忽略文件類型 88
4.1.3 忽略文件列表 89
4.1.4 忽略跟蹤文件內的變更 90
4.2 文件屬性 91
4.2.1 配置Diff和merge 94
4.2.2 文件轉換(內容過濾) 97
4.2.3 關鍵字替換表達式 99
4.2.4 其他內置屬性 101
4.2.5 屬性宏定義 101
4.3 使用reset命令修復錯誤 102
4.3.1 回退分支head 102
4.3.2 重置分支head和索引 103
4.3.3 丟棄變更和回退分支 105
4.3.4 安全模式重置—保留用戶變更 106
4.4 隱藏暫存變更 108
4.4.1 使用git stash 108
4.4.2 隱藏和暫存區 109
4.4.3 暫存探幽 110
4.5 管理工作區和暫存區 112
4.5.1 查看文件和目錄 113
4.5.2 搜索文件內容 114
4.5.3 撤銷對文件的跟蹤、暫存和修改 115
4.5.4 文件版本回退 116
4.5.5 清理工作區 117
4.6 多工作目錄 118
4.7 小結 119
第5章 Git協作開發 120
5.1 協作工作流 120
5.1.1 空版本庫 121
5.1.2 和其他版本庫交互 122
5.1.3 中心式工作流 122
5.1.4 對等網絡或者分支工作流 123
5.1.5 維護者和集成管理工作流 124
5.1.6 層級式(主從式)工作流 125
5.2 遠程版本庫管理 126
5.2.1 原生的遠程版本庫 127
5.2.2 瀏覽遠程版本庫 127
5.2.3 新建遠程版本庫 128
5.2.4 遠程版本庫信息更新 129
5.2.5 兼容不規則工作流 131
5.3 傳輸協議 132
5.3.1 本地傳輸 132
5.3.2 智能傳輸 134
5.3.3 使用bundle進行離線傳輸 136
5.3.4 遠程版本庫傳輸助手 142
5.3.5 憑據/密碼管理 145
5.4 發佈變更到上游 148
5.4.1 推送變更到公共版本庫 148
5.4.2 生成pull請求 149
5.4.3 交換補丁 149
5.5 信任鏈 151
5.5.1 內容地址存儲 152
5.5.2 輕量級標簽、附注標簽和簽名標簽 152
5.5.3 簽名提交 154
5.5.4 合併簽名標簽(合併標簽) 155
5.6 小結 157
第6章 分支應用進階 158
6.1 分支的類型和用途 158
6.1.1 長期或者永 久性分支 159
6.1.2 短期分支 164
6.2 分支工作流和發佈工程 165
6.2.1 預覽或者主幹分支工作流 165
6.2.2 節點或者漸進穩定性分支工作流 166
6.2.3 主題分支工作流 168
6.2.4 Git流—一種成功的Git分支模型 172
6.2.5 修復安全問題 173
6.3 遠程版本庫上分支間的交互 175
6.3.1 上游和下游 175
6.3.2 遠程跟蹤分支和refspec 176
6.3.3 fetch、pull和push 177
6.3.4 拉取、推送分支和標簽 179
6.3.5 推送模式應用 181
6.4 小結 185
第7章 集成變更 186
7.1 集成變更的方法 186
7.1.1 合併分支 187
7.1.2 拷貝和應用變更集 191
7.1.3 分支變基 194
7.2 解決合併衝突 197
7.2.1 三路合併 198
7.2.2 檢測失敗的合併操作 199
7.2.3 避免合併衝突 203
7.2.4 處理合併衝突 205
7.3 小結 207
第8章 歷史記錄管理 209
8.1 Git內部機制簡介 210
8.1.1 Git對象 210
8.1.2 Git的底層命令和高層命令 213
8.1.3 Git環境變量 213
8.2 重寫修訂歷史 216
8.2.1 編輯* 後一次提交 217
8.2.2 交互式變基 218
8.2.3 外部工具—補丁管理接口 224
8.2.4 使用git filter-branch進行腳本化重寫 225
8.2.5 用於重寫大型項目歷史記錄的外部工具 231
8.2.6 重寫已發佈歷史的風險 232
8.3 歷史記錄的非重寫式編輯 236
8.3.1 還原提交 236
8.3.2 使用筆記存儲附加信息 242
8.3.3 置換機制應用 249
8.4 小結 253
第9章 子項目管理—構建活動框架 254
9.1 管理庫和框架的依賴 255
9.1.1 Git外部依賴管理 256
9.1.2 手工導入項目代碼 257
9.1.3 包含子項目代碼的Git子樹 258
9.1.4 子模塊解決方案—版本庫嵌套 267
9.1.5 將子文件夾遷移到子樹或者子模塊中 279
9.1.6 子樹和子模塊 280
9.2 大型Git版本庫管理 283
9.2.1 處理包含大量歷史記錄的版本庫 283
9.2.2 處理包含大量二進制文件的版本庫 285
9.3 小結 287
第10章 Git的定制和擴展 288
10.1 Git與命令行 289
10.1.1 Git命令行提示符 289
10.1.2 Git命令自動補全 292
10.1.3 Git命令自動校正 293
10.1.4 命令行美化 294
10.1.5 命令行工具替代方案 294
10.2 圖形化接口 295
10.2.1 圖形化工具種類 295
10.2.2 圖形化的diff和merge工具 296
10.2.3 圖形化接口示例 298
10.3 配置Git 299
10.3.1 命令行選項和環境變量 299
10.3.2 Git配置文件 299
10.3.3 使用gitattribute配置單個文件 309
10.4 Git自動化鉤子 311
10.4.1 安裝Git鉤子 312
10.4.2 版本庫模板 312
10.4.3 客戶端鉤子 313
10.4.4 服務端鉤子 318
10.5 Git擴展 319
10.5.1 Git命令行別名 319
10.5.2 添加新的Git命令 321
10.5.3 憑據助手和遠程版本庫助手 322
10.6 小結 322
第11章 Git日常管理 323
11.1 版本庫維護 324
11.2 數據恢復和故障診斷 325
11.2.1 恢復已丟棄的提交記錄 325
11.2.2 Git故障診斷 327
11.3 Git服務端配置 328
11.3.1 服務端鉤子 328
11.3.2 使用鉤子實現Git強制策略 332
11.3.3 簽名推送 334
11.3.4 Git版本庫服務 335
11.3.5 Git版本庫管理工具 339
11.3.6 版本庫託管應用技巧 340
11.4 改進開發工作流 342
11.5 小結 342
第12章 Git最佳實踐 343
12.1 啟動項目 343
12.1.1 將工作分配到版本庫 344
12.1.2 選擇協作工作流 344
12.1.3 選擇需要實行版本控制的文件 344
12.2 推進項目 345
12.2.1 使用主題分支 345
12.2.2 確定工作背景 346
12.2.3 將變更分解成獨立的邏輯單元 347
12.2.4 編寫簡潔易讀的注釋 347
12.2.5 為提交變更做好準備 349
12.3 集成變更 349
12.3.1 提交和描述變更 349
12.3.2 審核變更的藝術 351
12.3.3 處理審核結果和評論 353
12.4 其他注意事項 353
12.4.1 不用慌,一切幾乎都是可以恢復的 354
12.4.2 不要修改已發佈的歷史記錄 354
12.4.3 版本發佈的數字化和
標簽化 354
12.4.4 盡可能自動化 355
12.5 小結 355

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 465
海外經銷商無庫存,到貨日平均30天至45天

暢銷榜

客服中心

收藏

會員專區