git 現在的火爆程度非同一般,它被廣泛地用在大型開源項目,團隊開發,以及獨立開發者,甚至學生之中。
初學者非常容易被各種命令,參數嚇哭。但實際上剛上手你并不需要了解所有命令的用途。你可以從掌握一些簡單,強大的命令開始,逐步去學習。(這就是這篇文章要講的)。好了,上來!
# 基本了解
git命令是一些命令行工具的集合,它可以用來跟蹤,記錄文件的變動。比如你可以進行保存,比對,分析,合并等等。這個過程被稱之為版本控制。已經有一系列的版本控制系統,比如SVN, Mercurial, Perforce, CVS, Bitkeepe等等。
Git是分布式的,這意味著它并不依賴于中心服務器,任何一臺機器都可以有一個本地版本的控制系統,我們稱之為倉庫。如果是多人協作的話,你還需要一個線上倉庫,用來同步信息。這就是GitHub, BitBucket的工作。
1. 安裝Git
安裝git非常直接:
Linux - 打開控制臺,然后通過包管理安裝,在Ubuntu上命令是:
`sudo apt-get install git-all`
Windows - 推薦使用[git for windows](https://git-for-windows.github.io/),它包括了圖形工具以及命令行模擬器。
OS X - 最簡單的方式是使用homebrew安裝,命令行執行
`brew install git`
如果你是在用圖形工具的話,那么推薦你使用[Github desktop](https://desktop.github.com/),[Sourcetree](https://www.atlassian.com/software/sourcetree)。但我還是推薦你使用命令行,下面的內容就都是命令行的。
2. 配置Git
安裝完git,首要任務是配置我們的信息,最重要的是用戶名及郵箱,打開終端,執行以下命令。
~~~
$ git config --global user.name "My Name"
$ git config --global user.email myEmail@example.com
~~~
配置好這兩項,用戶就能知道誰做了什么,并且一切都更有組織性了不是嗎?
3. 創建一個新倉庫 - git init
git 會把所有文件以及歷史記錄保存在你的項目中,創建一個新的倉庫,首先要去到項目路徑,執行 git init。然后git會創建一個隱藏的文件夾.git,所有的信息都儲存在其中。
在桌面創建一個聯系文件夾 git_exercise, 打開終端:
~~~
$ cd Desktop/git_exercise/
$ git init
~~~
OK,現在項目還什么都沒有,新建一個 hello.txt 文件試試~
4. 檢查狀態 - git status
git status 是另一個非常重要的命令,它會告訴我們創庫的當前狀態:是否為最新代碼,有什么更新等等執行
git status:
~~~
$ git status
On branch master
Initial commit
Untracked files:
(use "git add ..." to include in what will be committed)
hello.txt
~~~
git 告訴我們,hello.txt尚未跟蹤,這是因為這個文件是新的,git不知道是應該跟蹤它的變動呢,還是直接忽略不管呢。為了跟蹤我們的新文件,我們需要暫存它。
5. 暫存 - git add
git 有個概念叫 暫存區,你可以把它看成一塊空白帆布,包裹著所有你可能會提交的變動。它一開始為空,你可以通過 git add 命令添加內容,并使用 git commit 提交。
這個例子中只有一個文件:
`$ git add hello.txt`
如果需要提交目錄下的所有內容,可以這樣:
`$ git add -A`