Git查看歷史版本的提交內容


1.git diff用來比較文件之間的不同,其基本用法如下:

(1)git diff:當工作區有改動,臨時區為空,diff的對比是“工作區與最后一次commit提交的倉庫的共同文件”;當工作區有改動,臨時區不為空,diff對比的是“工作區與暫存區的共同文件”。

(2)git diff --cached 或 git diff --staged:顯示暫存區(已add但未commit文件)和最后一次commit(HEAD)之間的所有不相同文件的增刪改(git diff --cached和git diff –staged相同作用)

(3)git diff HEAD:顯示工作目錄(已track但未add文件)和暫存區(已add但未commit文件)與最后一次commit之間的的所有不相同文件的增刪改。

(3.1)git diff HEAD~X或git diff HEAD^^^…(后面有X個^符號,X為正整數):可以查看最近一次提交的版本往過去時間線前數X個的版本之間的所有同(3)中定義文件之間的增刪改。

(4)git diff <分支名1> <分支名2> :比較兩個分支上最后 commit 的內容的差別

(4.1)  git diff branch1 branch2 --stat    顯示出所有有差異的文件(不詳細,沒有對比內容)

(4.2)  git diff branch1 branch2              顯示出所有有差異的文件的詳細差異(更詳細)

(4.3)  git diff branch1 branch2 具體文件路徑 顯示指定文件的詳細差異(對比內容)

我們有2個分支:master、dev(dev為develop的縮寫,應是開發新功能的Feature分支),查看這兩個 branch 的區別,除了上面(abc)還有以下幾種方式:

(4.4) git log dev ^master 查看 dev中log有的commit,而 master中log沒有的commit

(4.5) git log master..dev查看 dev 中的log比 master 中的log多提交了哪些內容(注意,列出來的是兩個點“..”后邊(此處即dev)多提交的內容)

(4.6) git log dev...master 不知道誰提交的多誰提交的少,單純想知道有什么不一樣

(4.7) git log --left-right dev...master 在上述情況下,再顯示出每個提交是在哪個分支上

注意 commit 后面的箭頭,根據我們在 –left-right dev…master 的順序,左箭頭 < 表示是 dev 的,右箭頭 > 表示是 master的,截圖中表示這三個提交都是在 master 分支上的

 

轉自:https://blog.csdn.net/wq6ylg08/article/details/88798254

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM