1. 程式人生 > >Git 緩存區

Git 緩存區

git highlight Go 不同 選項 nbsp 現在 light UC

1. 查看日誌

git log --stat

2. 修改後不能直接提交

[git@iZbp12wtztgoi1eseucsoyZ demo]$ git status -s
 M test.txt
[git@iZbp12wtztgoi1eseucsoyZ demo]$ git add test.txt 
[git@iZbp12wtztgoi1eseucsoyZ demo]$ git status -s
M  test.txt  
[git@iZbp12wtztgoi1eseucsoyZ demo]$ git status -s
MM test.txt

 註意:第一個與第二個執行結果的不同:

(1)雖然都是M (modified) 標識,在執行 git add 之前,M位於第二列(第一列是空格),在執行完 git add 之後,M 位於第一列(第二列是空白)。

(2)位於第一列的字符 M 的含義是:版本庫中的文件與處於中間狀態--提交任務(提交暫存區,stage )中的文件相比有改動。

(3)位於第二列的字符M的含義是:工作區當前的文件與處於中間狀態--提交任務(提交暫存區,stage )中的文件相比有改動。

(4)出現兩個MM 的狀態輸出可以這麽理解: 不但版本庫中最新提交的文件與處於中間狀態==提交任務(提交咱村去,stage)中的文件相比有改動,而且工作區當前的文件與處於中間狀態--提交任務(提交咱村去,stage)只能夠的文件相比也有改動。即: 現在 test.txt 有三個不同的版本,一個在工作區,一個在等待提交的暫存區,還有一個是在版本庫中最新版本的 test.txt。通過不同的參數調用 git diff 命令可以看到不同狀態下 test.txt 文件的差異。

a. 不帶任何選項和參數調用 git diff 顯示工作區的最新改動,即工作區與提交任務(提交暫存區,stage)中相比的差異。

1    git diff

b. 將工作區與HEAD (當前工作分支)相比,會看到更多的差異。

1 git diff HEAD

 C. 通過參數 --cached 或 --staged 調用 git diff 命令,看到的是提交暫存區(提交任務,stage)和版本庫中文件的差異。

git diff --cached  
git diff --staged

 

Git 緩存區