2016-01-24 61 views
0

我發現圖像顯示diff命令的工作。 http://images.abizern.org.s3.amazonaws.com/365git/March10/GitDiffSimple.png`git diff`並沒有顯示你在工作樹中的變化相對提交

git diff HEAD 

變化顯示,你有你的工作相對於頭部樹,但如果我運行此腳本

mkdir test_git 
cd test_git 
git init 
echo 'one_file.txt' >> one_file.txt 
git add . 
git commit -m "my first commit" 
echo 'second_file.txt' >> second_file.txt 
git diff HEAD 

然後DIFF不顯示seconrd_file.txt的差異。爲什麼?

+3

http://stackoverflow.com/q/8544211/1030675 – choroba

回答

0

git diff命令提供了當前工作目錄或當前索引與HEAD的相對差異。在上面的示例中,您正在創建一個新文件,但尚未將其添加到索引或提交它。根據HEAD,新文件不存在,因此沒有任何區別。使用git add second_file.txt將索引中的文件暫存會將新文件引入存儲庫,並在執行git diff --cached命令時產生差異。

跟蹤變化的過程在Pro Git - 2.2 Git Basics免費提供詳細解釋。

相關問題