在 Git 中檢視檔案的提交歷史

Azhar Bashir Khan 2022年4月22日
在 Git 中檢視檔案的提交歷史

本教程將介紹如何在 Git 中檢視與特定檔案關聯的提交歷史記錄。

Git 是一個版本控制系統;我們使用 Git 來跟蹤對檔案所做的更改。

通常我們需要瀏覽和檢視對特定檔案所做的更改。Git 提供命令來檢視與檔案關聯的提交的歷史記錄以及完整的詳細資訊,例如檔案中所做的特定更改。

我們現在將用一個例子來說明這一點。

在 Git 中使用 gitkgit log 檢視與檔案相關的提交歷史

在協作開發環境中,我們經常希望在 Git 倉庫中該檔案的提交歷史記錄中檢視對特定檔案所做的更改。

我們想找出在給定提交中對特定檔案進行了哪些特定更改。

比如說,我們有一個名為 README.txt 的檔案。我們可能會使用此檔案來儲存專案自專案啟動以來的資訊。

現在,假設我們要檢視該特定檔案的提交歷史。為此,我們可以使用 Git 提供的 gitk 工具。

Gitk 是一個圖形化倉庫瀏覽器。它用於探索和視覺化倉庫的歷史。

使用 gitk 檢視特定檔案的提交歷史的語法是 gitk <filename>

因此,檢視檔案 README.txt 的歷史記錄,我們將執行如下命令。

$ gitk README.txt

它啟動 Gitk 的圖形使用者介面 (GUI),如下所示。

gitk-example1

左上窗格顯示了對倉庫中檔案 README.txt 的提交,最新的提交在頂部。

右下角顯示受所選提交影響的檔案列表,它顯示檔名為 README.txt 的路徑。

左下方窗格顯示檔案 README.txt 的提交詳細資訊和完整差異。

因此,Gitk 工具非常適合檢視與 Git 中特定檔案相關的提交歷史。

也可以將命令 git log 用於類似目的。檢視特定檔案的提交歷史的命令語法是 git log -p <filename>

因此,在我們的例子中,我們將執行如下命令。

$ git log -p README.txt
commit 8f2aa9af1a34ba8d57f60edcb6a29dfa23401e39 (HEAD -> main, origin/main)
Author: John Doe <johndoe@xyz.com>
Date:   Mon Dec 27 12:52:13 2021 +0530

    updated Readme.txt

diff --git a/project-path/README.txt b/project-path/README.txt
index 870c0a8..d09182c 100644
--- a/project-path/README.txt     
+++ b/project-path/README.txt     
@@ -1 +1,3 @@
-Initial project commit
+Further changes done
+1. This change
+2. That change

commit d25da7f49fae88a50bbc144df2429748077a2063
Author: John Doe <johndoe@xyz.com>
Date:   Mon Dec 27 12:50:53 2021 +0530

    Inital Readme.txt

diff --git a/project-path/README.txt b/project-path/README.txt
new file mode 100644
index 0000000..870c0a8
--- /dev/null
+++ b/project-path/README.txt     
@@ -0,0 +1 @@
+Initial project commit

帶有 -p 選項的 git log 命令顯示檔案的提交歷史記錄和每次提交之間的差異。

Gitk 工具可以被認為是 git log 命令的 GUI 包裝器。

因此,我們已經詳細說明了如何在 Git 中檢視與特定檔案關聯的提交的歷史記錄。

欲瞭解更多資訊,請訪問 -

  1. Gitk
  2. gitk - Git 倉庫瀏覽器
  3. git-log

相關文章 - Git Commit