Git官方和創始人都推薦的Git權威指南,廣度深度和實戰性前所未有

 

先給你們看一下大佬們對這本書的評價,省得說我「標題黨」android

 

版本控制是管理數據變動的藝術,不管數據變動是來自同一我的,仍是來自不一樣的人(一個團隊)。版本控制系統不但要忠實地記錄數據的每一次變動, 還要可以幫助還原任何一-次歷史變動,以及實現團隊的協同工做等。Git就是版本控制系統中的佼佼者。git

當開源軟件紛紛倒向分佈式版本控制系統大旗(尤爲是Git)的時候,不少商業公司也在行動了,尤爲是涉及異地團隊協同和Android核心代碼定製開發的公司。對於那些因保守而不敢向Git靠攏的公司,Git 也能夠派上用場,由於Git能夠與如今大多數公司部署的SVN很好地協同,即公司的服務器是SVN,開發者的客戶端則使用Git。相信隨着Git的普及,以及公司在代碼管理觀念上的改進,會有更多的公司擁抱Git。程序員

這本書能夠說是適合全部互聯網行業的程序員們,須要獲取這份Git文檔的小夥伴添加小助理vx:kaixindian331免費獲取!編程

 

文檔內容目錄

第一篇初識Git

第1篇講解了Git的相關概念,以及安裝和配置的方法,共3章。第1章介紹了版本控.制的歷史。第2章用十幾個小例子介紹了Git的- - 些閃亮特性,期待這些特性可以讓你愛上Git。第3章則介紹了Git在三種主要操做系統平臺上的安裝和使用。在本書的寫做過程當中,我70%的時間使用的是DebianLinux操做系統,Linux用戶能夠毫無障礙地完成本書列舉的全部實踐操做。在2010年年末,當得知有出版社願意出版這本書後,我向妻子阿巧預支了將來的部分稿費購買了個人第--臺MacBookPro,因而本書就有了較爲詳實的如何在Macosx下安裝和使用Git的內容,以及在本書第22章中介紹的關於Topgit在MacOSX.上的部署和改進相關的內容。在本書的編輯和校對過程當中由於要使用Word格式的文稿,因此本書後期的不少工做是在運行於VirtualBox 下的Windows虛擬機中完成的,即便是使用運行於資源受限的虛擬機中的Cygwin, Git 依然完美地完成了工做。瀏覽器

  • 第1章版本控制的前世和此生
  • 第2章愛上git的理由
  • 第3章gi t的安裝和使用

第二篇Git獨奏

第三篇Git和聲

第2篇和第3篇詳細講解了Git的使用方法,是本書的基礎和核心,大約佔據」全書40%的篇幅。這兩篇的內容架構方式是我在進行SVN培訓時就已經造成的習慣,即以「獨奏」指代一我的的版本控制所要講述的知識點,以「和聲」指代團隊版本控制涉及的話題。在第2篇「Git獨奏」中,本書將Git的設計原理穿插在各章之中講解,由於惟有了解真相(Git原理),纔有可能自由(掌握Git)。 在第3篇「Git和聲」中,本書講解了團隊版本控制必須掌握的里程碑和分支等概念,以及如何解決合併中遇到的衝突。服務器

  • 第4章git初始化
  • 第5章git暫存區
  • 第6章git對象
  • 第7章git重置
  • 第8章git檢出
  • 第9章恢復進度
  • 第10章git 基本操做
  • 第11章歷史穿梭
  • 第12章改變歷史
  • 第13章git克隆
  • 第14章git庫管理
  • 第15章 gi t協議與工做協同
  • 第16章 衝突解決
  • 第17章 git 里程碑
  • 第18章 git分支
  • 第19章遠程版本庫
  • 第20章 補丁文件交互

第4篇git協同模型

第4篇細緻地講解了Git在實際工做中的使用模式。除了傳統的集中式和分佈式使用模式以外,第22章還介紹了Topgit在定製開發中的應用,這也是我公司在使用Git時採用的最主要的模式。這一章還講解了我對Topgit所作的部分改進,相關的具體介紹最先出如今我公司的博客.上。第23~ 25章介紹了多版本庫協同的不一樣方法,其中第25章介紹的一個獨闢蹊徑的解決方案是由Android項目引入的名爲repo的工具實現的,我對其進行改造後可讓這個工具脫離Gerrit代碼審覈服務器,直接操做Git服務器。第26章介紹了git-svn 這一工具,該工具不但能夠實現從SVN版本庫到Git版本庫的遷移,還能夠實現以Git做爲客戶端向SVN提交。架構

 

  • 第21章經典git協同模型
  • 第22章topgit協同模型
  • 第23章子模組協同模型
  • 第24章子樹合併
  • 第25章android式多版本庫協同
  • 第26章git和svn協同模型

第五篇搭建Git服務器

第5篇介紹了Git服務器的架設。本篇是全書最先開始撰寫的部分,這是由於我給客戶作的Git培訓講義的相關內容不夠詳細,因而應客戶要求針對Gitolite等服務器的架設撰寫了詳細的管理員手冊,即本書的第30章。第32章介紹了Android項目在Git管理上的又一大創造,即Gerrit,它實現了一個獨特的集中式Git版本庫管理模型。ssh

 

  • 第27章使用http協議
  • 第28章使用git 協議
  • 第29章使用ssh協議
  • 第30章gitolite 服務架設
  • 第31章gi tosis服務架設
  • 第32章gerrit 代碼審覈服務器
  • 第33章git版本庫託管

第六篇轉移到Git

第6篇講解了Git版本庫的遷移。其中第34章詳細介紹了從CVS版本庫到Git版本庫的遷移,其遷移過程也能夠做爲從cVs到SVN遷移的借鑑。本篇還介紹了從SVN和Hg版本庫到Git的遷移。對於其餘類型的版本庫,介紹了一個通用的須要編程來實現的方法。在本篇的最後還介紹了一個Git版本庫整理的利器,能夠理解爲一個Git庫轉換爲另外--個Git.庫的方法。分佈式

  • 第34章CV s版本庫到gi t的遷移
  • 第35章更多版本控制系統的遷移

第七篇Git的其餘應用

第7篇是關於Git的其餘應用,其主要內容介紹了我在etckeeper啓發下開發的一款備份工具Gistore,該工具能夠運行於Linux和Mac OS X下。svn

 

  • 第36章etckeeper
  • 第37章gistore
  • 第38章補丁中的二進制文件
  • 第39章雲存儲

第八篇Git雜談

第8篇是Git雜談。其中第40章的內容可供跨平臺的項目組借鑑。第41章介紹了一些在前面沒有涉及的Git的相關功能和特性。

 

  • 第40章跨平臺操做git
  • 第41章git的其餘特性

這本書能夠說是適合全部互聯網行業的程序員們,須要獲取這份Git文檔的小夥伴能夠添加小助理vx:kaixindian331免費獲取!

在Mac OS X下安裝和使用Git

Mac OS X被稱爲最人性化的操做系統之一,工做在Mac.上是件很是愜意的事情,工做中又怎能沒有Git呢?

 

理解Git暫存區( stage)

將.上面的實踐從頭到尾操做一遍,不知道您的感想如何:

  • 被眼花繚亂的Git魔法完全搞糊塗了?」
  • Git爲何這麼折磨人,修改的文件直接提交不就完了嗎?」
  • 看不出Git這麼作有什麼好處?」

 

圖形工具: gitk

gitk是最先實現的-一個圖形化的Git版本庫瀏覽器軟件,基於Tcl/Tk實現,所以gitk很是簡潔,自己就是由一個1萬多行的tcl腳本寫成的。gitk 的代碼已經和Git的代碼放在了同一個版本庫中, gitk隨Git一同發佈,不用特別地安裝便可運行。gitk能夠顯示提交的分支圖,能夠顯示提交、文件、版本間的差別等。在版本庫中調用gitk,就會瀏覽該版本庫,顯示其提交的分支圖。gitk 能夠像命令行工具同樣使用不一樣的參數進行調用。

 

傳統集中式協同模型

對於簡單的代碼修改,能夠像傳統集中式版本控制系統(Subversion) 那樣工做,參照圖21-2所示的工做流程圖。

 

Gerrit 的實現原理

Gerrit更準確地說應該稱爲Gerrit2。由於Android項目最先使用的評審服務器Gerrit不是今天這個樣子的。最先版本的Gerrit是用Python開發運行於Google App Engine上的,從Python之父GuidovanRossum開發的Rietveld分支而來。在這裏要討論的Gerrit實爲Gerrit2,是用Java語言實現的。

 

跨平臺操做 Git

您是在什麼平臺(操做系統)中使用Git呢?圖40-1是網上發佈的一個Git使用平臺調查結果的截圖」,從中能夠看出排在前三位的是: Linux、Mac OS X和Windows。而Windows用戶中又以使用msysGit的用戶居多。

 

 

這本書能夠說是適合全部互聯網行業的程序員們,須要獲取這份Git文檔的小夥伴能夠添加小助理vx:kaixindian331免費獲取!

 

 

這份PDF600多頁就不給你們所有展現了,須要獲取這份Git文檔的小獲取能夠添加小助理vx:kaixindian331免費獲取!

相關文章
相關標籤/搜索