git學習筆記和命令備忘
常聽說作為一個Coder如果不會git你就不是一個菜鳥級別的Coder,因為你壓根不是真正Coder,你只是一個Code搬運工。所以決定好好學習git的使用。
什麼是git
git是目前世界上最流行的分散式版本控制系統,學會git幾乎成了開發者的必備技能。
安裝git
Git for Windows. 國內直接從官網(http://git-scm.com/download/win)下載比較困難,需要翻牆。這裡提供一個國內的下載站,方便網友下載:https://github.com/waylau/git…
命令列工具用git自帶的Git Bash
也非常好用,如果想視窗好看點可以用cmder
檢視git是否安裝成功,可以用命令git --version
$ git --version
git version 2.11.1.windows.1
配置
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
填寫自己的使用者名稱和郵箱,如果有github賬戶,可以填寫github的使用者名稱和郵箱,如果沒有可以隨便填寫自己常用的,使用者名稱建議用英文,避免不必要的麻煩
如果用了--global
引數,那麼更改的配置檔案就是位於你使用者主目錄下的那個/Users/使用者名稱/.gitconfig
,以後你所有的專案都會預設使用這裡配置的使用者資訊。
如果要在某個特定的專案中使用其他名字或者郵箱,只要去掉--global
選項重新配置即可,新的設定儲存在當前專案的.git/config
檔案裡。
配置好可以通過git config -l
或git config --list
檢視配置資訊,檢視當前專案的配置資訊git config --local -l
建立版本庫
選擇一個合適的地方,建立一個空目錄
$ mkdir test
$ cd test
進入該目錄,通過git init
命令把目錄初始化成git可以控制管理的庫
$ git init
Initialized empty Git repository in E:/www/test/.git/
這樣倉庫就建好了,目前倉庫沒有內容是個空倉庫,在當前目錄下多了一個.git
的隱藏目錄,這個目錄是git用來跟蹤管理版本庫的,沒事千萬不要手動修改這個目錄裡面的檔案,不然改亂了,就把git倉庫給破壞了。
工作區、暫存區和版本庫
我們先來理解下Git 工作區、暫存區和版本庫概念
-
工作區:就是你在電腦裡能看到的目錄。
-
暫存區:英文叫stage, 或index。一般存放在 “.git目錄” 下的index檔案(.git/index)中,所以我們把暫存區有時也叫作索引(index)。
-
版本庫:工作區有一個隱藏目錄.git,這個不算工作區,而是Git的版本庫。
下面這個圖展示了工作區、版本庫中的暫存區和版本庫之間的關係:
git add 和 git commit
新增檔案到暫存區
$ git add [file1] [file2] ... //新增指定檔案到暫存區
$ git add [dir] //新增指定目錄到暫存區,包括子目錄
$ git add . //新增當前目錄的所有檔案到暫存區,不包括$ git rm 刪除的檔案
$ git add --all //新增當前目錄的所有檔案到暫存區,包括$ git rm 刪除的檔案
提交暫存區檔案到版本倉庫
$ git commit -m [message] //提交暫存區到倉庫區 message:提交備註資訊
$ git commit -am // git add 和 git commit 縮寫
先使用$ git add --all
把工作區的新建檔案或修改的檔案提交到暫存區,可以多次提交到暫存區,在使用 $ git commit -m
把暫存區的檔案一起提交到版本倉庫並標記成一個版本
git status 和 git diff
$ git status //顯示有變更的檔案
$ git diff HEAD //顯示工作區與當前分支最新commit之間的差異