1. 程式人生 > >寫給 Git 初學者的7個建議

寫給 Git 初學者的7個建議

當我剛剛開始使用Git的版本控制時,我根本不確定我付出那麼多時間是不是會得到回報。Branch、Stage、Stash,這些Git名詞對我來說都非常陌生。

而今天的我已不能想象生活沒有Git會變成什麼樣。Git不僅提供了我非常需要的版本控制功能,還讓我變成一個更優秀的程式設計師。

這裡有一系列可以幫助你的小貼士,可以讓Git成為你開發工作中非常重要的一部分。

第一條:花時間去學習Git的基本操作

學習Git的基本操作並不是要求你把整個Git文件從頭到尾讀完(但如果這就是你的方式,我也不會反對)。

Git裡面有太多的教育內容,我很確定裡面一定有對你胃口的最佳學習方式。

gitimage0

看一下以下這些Git學習資源吧:

  • 試試Git – 15分鐘的Git互動教程
  • 提示和技巧(Ry的Git教學)是常見Git功能的實踐教程
  • Git Ready是一個收藏有許多簡單而簡短的Git提示的網站
  • Git Tower學習區是一個在我的網站上的Git學習資源列表
  • Pro Git一本讓你深入瞭解Git的線上書籍

第二條:從簡單的Git工作流開始

少即是多。

常常的,Git會和一個複雜的工作流聯絡起來。不過我可以這麼說:你還暫時不需要為了Git的諸多好處,而一下子變成Git大師。

Git的工作流是可以非常簡單的 —- 而且在許多情況下你需要的就是這麼簡單。你當然可以用multiple remote repositories、issue pull request、rebase changes等等,但是你不想用這些的話完全可以不用。

從簡單的工作流入手也會使日後新增複雜性或者使用Git高階功能變得簡單。當你需要使用這些功能的時候,Git已經準備好了。

這裡有一些不同的Git工作流的例子,你可以從他們的想法中得到啟發

總的來說:不要因為覺得Git什麼都要學就壓力很大,你完全可以從今天開始使用Git。

第三條:不要再害怕犯錯誤

Git最出色的一點是:它幾乎是100%易上手誤操作的。

記住以下幾點會讓你晚上睡得更香:

  1. Git基本上不刪除資料。即使是那些看起來是刪除資料的操作,實際上是為了讓你更快的撤銷刪除,而在向系統新增資料。
  2. Git基本可以撤銷所有操作。我鼓勵你更多的實驗和探索你的想法,因為這就是使用版本控制系統系統的最主要的好處之一。
  3. 你團隊的每一個成員都在他/她的計算機中有各自的副本。本質上這更像是整個版本控制專案中的冗餘備份(包括包括整個歷史紀錄),你捅了大婁子而且還沒辦法還原這種情況是極其少見的。

第四條:理解分支概念

在Git裡面,分支這個概念是你一開始能學到的最有用的東西了。分支允許你隔離開發你的專案,而要想成為一個高效的Git使用者,這是非常關鍵的一點。

一開始這聽起來好像不是什麼大事,但一旦你完全的理解了分支概念,你會開始想沒有這個你怎麼活下去。

儘管其他的版本控制系統也會使用分支概念,Git是第一個實現它,並讓它變的好用的系統。

這裡有一些有助你瞭解Git分支概念的資源:

第五條:學習暫存區

當你的提交裡面只包含一些相關的變化時,版本控制會變的非常有用[b],它保證了你的提交可以被沒有任何副作用的回滾,經常提交的習慣也可以讓你的同事更好的瞭解你的進度。

Git有個功能叫暫存區讓這一切都變為可能

學習使用暫存區,並愛上它,因為這是Git裡面最重要最獨立的一個模組。

第六條:用Git圖形介面

儘管使用圖形介面絕對不會是一個要求,但我還是高度推薦使用。

使用圖形介面讓大多數操作都變得簡單,讓你在專案開始時便佔盡優勢。

不管怎麼說,使用Git不應該只是記住各種命令和引數,而是改進你的程式設計工作流。如果圖形介面可以做到這一點的話,沒有理由讓簡單的事變的困難嘛。

Gitimage02

看一下這些Git介面吧:

  • Tortoise Git – Windows平臺下的開源Git圖形介面
  • GitX(L) – Mac OS X下的開源Git客戶端
  • SourceTree – Windows和Mac下的免費Git或Mecurial介面
  • Tower – 我們公司為Mac使用者所出的Git介面

使用圖形介面並不能減輕你學習Git基礎的負擔,不過一旦你快樂的征服了Git,使用這些工具會讓你的生活變得更輕鬆。

第七條:對自己承諾你會用Git

使用一個新工具一開始會讓人非常頭疼,走過這條學習曲線的方法只有一個:繼續走下去。

做一個充分的承諾,不要回頭。在你平常的工作流裡引入Git很快就會被證明這是你近期做的最大的,最有意義的決定。

避免這種情況:「我會在這個專案裡使用Git,但其他專案就再說了。」至少一開始不要這樣。

充分承諾的這種心態會讓你有更多的機會去練習,讓事情變得更加簡單,因為你知道你現在這個專案用了版本控制系統。而更重要的是,讓Git成為你的程式設計習慣。

未來不久,你就會看到只有那麼一些情況不需要用到Git,

對自己做一個100%的承諾,作為Git征服之路的開始。