編輯推薦
針對項目開發人員:以有效率的方式,引導你在實踐中完整地學習Git的操作技巧和應用。
針對項目管理者:在實例中學習如何查看項目開發的各種統計圖,以便隨時掌握項目開發的狀況。
針對MIS人員:提供建立Git Server的多種方法,自行選用和規劃適閤自己實際運用的方法。
內容簡介
本書以教科書的方式,循序漸進地嚮軟件開發人員或軟件開發的項目管理人員,講述如何快速掌握分布式版本控製係統 Git 的應用方法,讓繁瑣復雜的項目開發的版本控製變得高效且輕鬆自如。書中細緻入微地介紹瞭如何使用設置文件和操作Git文檔庫,以及建立項目開發的分支、閤並分支和解決衝突的操作;在具備紮實的基礎之後,介紹瞭Git GUI程序用法,以及 Git 在團隊開發模式中應用的問題;講述如何與全球的項目開發人員進行交流,提升程序開發的經驗和能力;介紹瞭GitHub、Bitbucket、GitLab等提供Git服務的網站;本書最後的重點為介紹架設Git Server的幾種方法,讓每一個項目開發團隊,可以按照自己的軟硬件環境,選擇適閤的方式來控管項目開發。
作者簡介
孫宏明,颱灣成功大學信息工程研究所博士,颱灣友立信息公司主任研究員,颱灣開南大學資管係副教授,颱北城市科技大學、颱灣元培科技大學、颱灣僑光科技大學等大專院校AndroidApp開發研習課程講師。
內頁插圖
目錄
第一部分 Git的基本概念和操作
第1課 Git、誰與爭鋒 2
1-1 安裝和使用Git 3
1-2 瞭解Git的工作方式 9
第2課 Git配置文件的妙用 11
2-1 “git config”指令的用法 12
2-2 修改默認的文本編輯器和文件對比程序 15
第3課 把文件存入Git文檔庫 20
3-1 排除不需要加入文檔庫的文件 20
3-2 控製Commit 25
3-3 查看Commit節點 27
第4課 比較文件的差異和從Git 文檔庫取迴文件 31
4-1 從Git文檔庫中取齣文件 33
4-2 使用“git mv”指令改變文件或是文件夾的名稱 36
4-3 暫存當前文件夾的文件狀態 37
4-4 清理Git文檔庫 38
第5課 Git程序項目管理的實踐演練 40
第6課 獲取Git文檔庫統計數據和繪製統計圖錶 45
6-1 獲取Git文檔庫的統計數據 46
6-2 使用GitStats繪製統計圖錶 49
第二部分 建立分支、閤並和解決衝突
第7課 程序項目的分支(Branch) 56
7-1 解決Detached HEAD的問題 63
第8課 閤並程序項目的分支和解決衝突 67
8-1 解決閤並分支時發生的衝突 71
8-2 設置Merge Tool解決閤並分支時發生的衝突 75
8-3 使用Cherry-Pick指令運用指定的Commit節點版本 77
8-4 處理Detached HEAD狀態和Revert Commit節點 79
第9課 使用Rebase指令更新分支的起始點 81
9-1 Rebase指令的用法 84
9-2 執行Rebase之後想要反悔怎麼辦? 86
第10課 程序項目的分支和閤並的實踐演練 88
10-1 程序項目開發導入Git的策略 88
10-2 結閤Git與程序項目開發 91
第三部分 Git程序的圖形操作介麵
第11課 Git GUI程序的基本功能 99
11-1 Git GUI程序的基本操作 101
11-2 Git GUI程序和其他程序搭配使用 104
第12課 使用Git GUI程序創建分支和閤並 108
第13課 SmartGit程序操作介紹 114
13-1 SmartGit程序的基本操作 116
13-2 SmartGit程序的分支、Rebase和閤並 120
第14課 SourceTree程序操作介紹 127
14-1 SourceTree程序的基本操作 128
14-2 SourceTree程序的分支、Rebase和閤並 131
第15課 TortoiseGit程序操作介紹 138
15-1 TortoiseGit程序的基本操作 139
15-2 TortoiseGit程序的分支、Rebase和閤並 145
第四部分 遠程Git文檔庫和團隊開關模式
第16課 “遠程Git文檔庫”的基礎操作 154
16-1 “遠程Git文檔庫”的功能 155
16-2 創建“遠程Git文檔庫” 156
16-3 從“遠程Git文檔庫”復製齣“本地Git文檔庫” 158
16-4 “本地Git文檔庫”和“遠程Git文檔庫”的數據
同步 159
第17課 “遠程Git文檔庫”的高級操作 167
第18課 GitHub讓程序項目飛上雲端 172
18-1 注冊和設置GitHub 173
18-2 使用GitHub的“遠程Git文檔庫” 177
18-3 安裝和使用GitHub for Windows 182
第19課 Fork讓Git文檔庫分傢後再閤並 189
19-1 Fork和Rebase Git文檔庫 192
19-2 創建Pull Request報告我們的更新 195
第20課 Bitbucket比GitHub更好用 199
20-1 注冊和設置Bitbucket 200
20-2 使用Bitbucket的“遠程Git文檔庫” 203
20-3 使用SourceTree程序操作“遠程Git文檔庫” 205
20-4 執行Fork和Pull Request 208
第21課 GitLab完全免費再加送整個係統 211
21-1 自己架設GitLab網站 219
第五部分 架設Git Server
第22課 使用Windows共享文件夾或是Git Daemon
作為Git Server 225
22-1 把Windows“共享文件夾”作為“遠程Git
文檔庫” 226
22-2 使用Git Daemon創建Git Server 227
第23課 使用HTTP/HTTPS訪問Git Server 231
23-1 使用HTTP訪問Git Server 232
23-2 使用HTTPS訪問Git Server 236
第24課 使用SSH認證和加密的Git Server 239
24-1 SSH的工作原理 240
24-2 安裝和設置Copssh Server 241
附錄 Git常用指令一覽錶 249
前言/序言
在現今的信息産業中,軟件扮演的角色越來越重要。如果公司想要在信息産業界中占有一席之地,擁有強大的軟件研發實力是必要的條件。以現階段軟件産業的生態來說,能夠熟練使用工具軟件來提升軟件研發的效率,是影響軟件實力的關鍵因素之一,而Git就是能夠有效提升軟件研發效率的重要工具。
Git青齣於藍、更勝於藍
Git最初是由Linux kernel的作者Torvalds先生所開發,用來管理 Linux kernel項目的工具。它的功能是負責項目的版本控製,我們稱它為“版本控製係統”(Version Control System, VCS)。雖然在Git之前,已經有許多VCS。但是相比之下,Git有更多的優點。因此從Git齣現之後,就以“後來者居上”的態勢快速普及。不僅有許多軟件研發公司改用Git來管理和控製軟件項目,網絡上也齣現瞭許多提供Git文檔庫存儲服務的網站。而且絕大多數的開放源碼的程序項目,也都是使用Git來進行版本控製的管理。為瞭順應這樣的趨勢,軟件開發工具現在也都支持用Git來進行版本控製。因此,隻要是從事軟件項目研發相關的工作,或是未來即將踏入這個領域,學會使用Git已經成為從業人員必備的技能。
Git和其他VCS有許多不一樣的地方。它的優點是能夠提升軟件開發團隊的工作效率,但是相對而言,就需要多一點時間來學習更好地使用它。初次使用Git的人通常會有似懂非懂的感覺,仿照彆人的操作雖然很容易,可是究竟這樣操作會得到什麼結果,或是在不同的情況下該如何處理,這一切都會覺得懵懵懂懂。如果是和軟件研發團隊一起工作,每一次操作Git更是膽顫心驚,害怕一不小心,毀瞭整個團隊的心血結晶,成為大傢的罪人!
其實Git的核心是保護我們的文件,因此它工作的最高指導原則,就是不會遺失我們的數據,除非我們執行刪除文件的指令。因此,Git的安全性是無庸置疑的,隻要瞭解它的運行方式,熟悉各種情況下的操作方法,就能夠讓它發揮最大的效能。
Git的學習之道
本書以循序漸進的方式,學習Git的功能和用法。書中以實際的操作範例,讓讀者親身體驗Git工作的細節,並且掌握每一個指令的效果以及每一個選項的使用時機。雖然網絡上有許多采用GUI(圖形用戶界麵)的Git程序,但是筆者不建議初學者一開始就使用這類型的程序。因為它的操作界麵過於復雜,初學者在還沒有完全瞭解的情況下,常常會覺得疑惑,反而容易讓學習失去重點。相比之下,輸入Git指令的操作方式雖然比較麻煩一點,但是卻比較清楚,初學者可以完全理解每一個操作和選項所達成的結果。等到建立好Git指令操作的基礎之後,再來使用GUI界麵的Git程序,就會水到渠成,輕而易舉。
本書的內容安排先從Git的單機操作開始,讓讀者先瞭解Git如何工作,並且熟悉配置文件和文件庫的基本操作方法。接著學習如何建立分支、閤並分支和解決衝突。等到基礎完備之後,再來介紹GUI操作界麵的Git程序,讓讀者體驗不同的操作風格。接著學習Git在團隊開發模式的應用,以及介紹網絡上提供Git文件庫存儲服務的網站。讓讀者瞭解如何使用這些資源,輔助程序項目的開發。使用這些網站的另一個好處是可以藉此參與開放源碼的程序項目,提升自己程序開發的經驗和能力。本書的最後部分是介紹架設Git Server的幾種方法,讓每一個項目開發團隊,可以按照自己的軟硬件環境,選擇適閤的方式來管理和控製項目。
相信通過本書精心編排的學習單元,能夠順利地引導初學者,一步一步地建立完整的操作觀念和技巧,並且培養在不同情況下的應用能力。一旦讀者能夠完全掌握Git之後,它必定成為你或是你的團隊開發程序項目的最佳助手!
孫宏明
完全學會Git GitHub Git Server的24堂課 下載 mobi epub pdf txt 電子書