Git使用入門

  Git是一個開源的分佈式版本控制系統,用以有效、高速的處理從很小到很是大的項目版本管理。Git 是 Linus Torvalds 爲了幫助管理 Linux 內核開發而開發的一個開放源碼的版本控制軟件。Torvalds 開始着手開發 Git 是爲了做爲一種過渡方案來替代 BitKeeper,後者以前一直是 Linux 內核開發人員在全球使用的主要源代碼工具。開放源碼社區中的有些人以爲 BitKeeper 的許可證並不適合開放源碼社區的工做,所以 Torvalds 決定着手研究許可證更爲靈活的版本控制系統。儘管最初 Git 的開發是爲了輔助 Linux 內核開發的過程,可是咱們已經發如今不少其餘自由軟件項目中也使用了 Git。git

  分佈式和集中式的最大區別在於開發者能夠本地提交。每一個開發者機器上都有一個服務器的數據庫。從通常開發者的角度來看,git有如下功能:數據庫

  1:從服務器上克隆數據庫(包括代碼和版本信息)到單機上。windows

  2:在本身的機器上建立分支,修改代碼。服務器

  3:在單機上本身建立的分支上提交代碼。分佈式

  4:在單機上合併分支。工具

  5:新建一個分支,把服務器上最新版的代碼fetch下來,而後跟本身的主分支合併。學習

  6:生成補丁(patch),把補丁發送給主開發者。fetch

  7:看主開發者的反饋,若是主開發者發現兩個通常開發者之間有衝突(他們之間能夠合做解決的衝突),就會要求他們先解決衝突,而後再由其中一我的提交。若是主開發者能夠本身解決,或者沒有衝突,就經過。spa

  8:通常開發者之間解決衝突的方法,開發者之間可使用pull 命令解決衝突,解決完衝突以後再向主開發者提交補丁。版本控制

  git適合分佈式開發,強調個體,公共服務器壓力和數據量都不會太大,速度快、靈活,任意兩個開發者之間能夠很容易的解決衝突,能夠離線工做。可是git資料少,學習週期相對而言比較長,不符合常規思惟,代碼保密性差,一旦開發者把整個庫克隆下來就能夠徹底公開全部代碼和版本信息。

  儘管 git 是一個正式項目發佈系統,它卻能夠方便地將你的項目創建在鬆散的開發人員組織形式上。 Linux內核的開發,就是按這樣的模式進行的。須要強調的是真正的很是規的開發組織形式, git 這種組織形式,意味着對於工做流程的約束,沒有任何強迫性的原則。

  Linux下的軟件有不少都不直接以二進制形式的安裝包提供,而是直接提供了源代碼。用戶須要先下載源代碼,而後在本機上編譯並安裝(通常使用make、make install等命令)。目前GIT已經能夠在windows下使用,主要方法有二:msysgit和Cygwin。Cygwin和Linux使用方法相似,Windows版本的GIT提供了友好的GUI(圖形界面),安裝後很快能夠上手。 

相關文章
相關標籤/搜索