准備工作:
創建一個新的項目,並初始化git

創建兩個文件,並寫入對應內容(utf-8無bom格式)

執行git add 命令將兩個文件添加到暫存區,執行commit命令提交到倉庫並生產快照

修改工作區文件內容

比較暫存區與工作區的目錄:git diff

以text1為例
diff --git a/text1.txt b/text1.txt:代表對比的是暫存區和工作區的text1.txt文件
index 6c1b360..fae445e 100644
--- a/text1.txt:舊文件(-代表舊文件),指的是存在暫存區的文件(text1.txt)
+++ b/text1.txt:新文件(+代表新文件),指的是存在工作區的文件(text1.txt)
@@ -1 +1,2 @@
-text1 write 1:舊文件(暫存區)里面的內容
\ No newline at end of file:說文件內容不是以換行符結束的
+text1 write 1:新文件(工作區)的內容
+text1 write 2:新文件(工作區)的內容
\ No newline at end of file
比較兩個歷史快照:git diff 快照ID1 快照ID2
git commit -am:一次性提交到暫存區和倉庫

執行git log查看快照和ID

執行對比:

比較當前工作目錄和git倉庫某個快照:git diff 快照ID
由於全部內容都提交了,所以修改一下文件再對比


比較當前工作區與倉庫的內容:git diff HEAD

比較暫存區與git倉庫快照:git diff --cached [快照ID],命令不加快照ID時默認比較最新的倉庫里的文件
把剛剛修改的text1.txt提交到暫存區

指定快照ID

各版本之間對比的圖

