1、知識體系
Git的知識體系分爲以下四部分
- 基礎
- 環境搭建: 安裝Git,創建本地版本庫等
- 概念:瞭解工作區,暫存區等。
- 對象:需把Git看做是數據庫。基本操作都是增,刪,改,查。
- commit:commit對象,增,改,查。雖然可以刪除,但是不建議刪除。
- blob:blob對象,根據文件的內容計算唯一的Hash值。
- tree:tree對象,每一個樹對象對應一個工作目錄,或者是一個版本庫的快照。
- tag:tag對象,標籤用於快速訪問。
- branch:分支,它並不是對象,是一系列commit對象的集合。
- 功能:
- reflog:查看當前指針變更的歷史記錄,提交,切換分支等操作都會改變當前指針引用的commit。
- stash:棧區,與數據結構中棧的操作完全相同,增,刪,改,查等。
- patch:補丁,沒有關聯的版本庫同步數據的方式。
- hook:鉤子,事件機制,類似於數據庫的trigger,前端的event,略。
- 服務器
- 整合第三方版本工具:如何將原有SVN的版本庫改爲git,實現子模塊功能,略。
- 私人服務器:搭建私人的服務器。
- 開源服務器:目前較有名的是GitHub。
除此之外,還有一些比較實用的git技巧。
2、原著
《Version control with Git》第二版,原著總共有20個章節。
- 第一章節介紹Git的歷史。
- 第二章節介紹Git的安裝。
- 第三章節演示HelloWorld示例
- 第四章節介紹核心對象。
- 第五章節介紹Index
- 第六章節介紹commit對象
- 第七章節介紹分支。
- 第八章節介紹diff命令。它基本不再使用,是因爲有很多優秀的對比工作可以替代它。
- 第九章節介紹分支的合併。
- 第十章節介紹DRG的操作,修改提交歷史的一些命令,例如rebase, cherry-pick, reset等
- 第十一章節介紹stash和reflog
- 第十二章節介紹遠程版本庫
- 第十三章節介紹Git服務器
- 第十四章節介紹補丁。
- 第十五章節介紹hook。略
- 第十六,十七章節介紹模塊化版本庫。
- 第十八章節介紹將SVN版本庫轉換爲Git。略。
- 第十九章節介紹高級操作。
- 第二十章節介紹一些技巧。
無論閱讀Git的哪些著作,Git指令的幫助手冊都是必讀的,因爲最後的任何操作都是指令。輸入git command_name --help即可查閱該命令的幫助手冊。
3、鏈接
Git官網:https://git-scm.com/。
Git UI工具:https://git-scm.com/download/gui/windows,個人推薦使用烏龜和Git extension。