git 的工作就是建立和儲存你的專案的快照及與之後的快照進行比較。本文將對有關建立與提交專案的快照的命令作介紹。
獲取與建立專案的命令
git init
用 git init在目錄中建立新的Git 倉庫。你可以在任何時候,任何目錄中這麼做,完全是本地化的。
在目錄中執行git init,就可以建立一個Git倉庫了。比如我們建立test專案:
$ mkdir test
$ cd test
git init
現在你可以看到在你的專案目錄中有個.git的子目錄。這就是你的Git倉庫了,所有有關你的專案的快照資料都存在這裡。
git clone
使用git clone 拷貝一個git 倉庫到本地,讓自己能夠檢視該專案,或者進行修改。
如果你需要與他人合作一個專案,或者想要複製一個專案,看看程式碼,你就可以克隆那個專案。執行命令:
git clone [url]
[url]為你想要複製的專案,就可以了。
例如我們克隆Github上的專案:
例如我們要克隆Github上的專案:
$ git clone git://github.com/schacon/simplegit.git
預設情況下,Git會按照你提供的URL所指示的專案的名稱建立你的本地專案目錄。通常就是該URL最後一個/之後的專案名稱。如果你想要一個不一樣的名字。你可以在該命令後加上你想要的名稱。
基本快照
git 的工作就是建立和儲存你的專案的快照及與之後的快照進行對比。本章將對有關建立與提交的快照的命令介紹.
git add
git add 命令可將該檔案新增到快取。
git status 命令用於檢視專案的當前狀態。
git diff
執行git diff 來檢視執行git status的結果的詳細資訊
git diff 命令顯示已寫入快取與修改但尚未寫入快取的區別。git diff 有兩個主要的應用場景。
尚未快取的改動 git diff
檢視已快取的改動:git diff --cached
檢視已快取的與未快取的所有改動: git diff HEAD
顯示摘要而非整個diff :git diff --stat
git commit
使用 git add 命令將想要的快照的內容寫入了快取,而執行git commoit 記錄快取區的快照。
Git 為你的每一個提交都記錄你的名字與電子郵件地址,所以第一步需要配置使用者名稱和郵箱地址。
$ git config --global user.name 'test'
$ git config --global user.email test@163.com
接下來我們寫入快取,並提交對檔案的改動。在首個例子中,我們使用-m 選項在命令列中提供提交的註釋。
$git add
$ git status -s
$ git commit -m 'test'
現在我們已經記錄了快照 了。如果我們再執行git status:
檢視上次提交是否有修改。
如果你沒有設定-m選項 ,git 會嘗試為你開啟一個編輯器以填寫提交資訊。如果Git在你對它的配置中找不到相關資訊,預設會開啟vim,螢幕會像這樣:
#Please enter the commit message for your changes. Lines starting # will be igored,and an empty message aborts the commit.#On
branch master #(user "git reset HEAD..." to unstage)
如果你覺得git add 提交快取的流程太繁瑣,Git 也允許你使用-a 選項跳過這一步。命令格式如下:
git commit -a
如:
$ git commit -am 'modify config'
git reset HEAD
git reset HEAD命令用於取消已快取的內容。
git rm
git rm 將檔案從快取區中移除
預設情況下,git rm file 會將檔案從快取區和你的硬碟(工作目錄)刪除。如果要在工作目錄中留著該檔案,可以使用命令:
git rm --cached
git mv
git mv 命令做得所有的事情就是git rm --cached ,重新命名磁碟上的檔案,然後執行git add 把新檔案新增到快取區。因此,雖然有git mv命令,但它有點多餘。