Skip to content
本站總訪問量
本站訪客數 人次

git log 查找特定檔案的歷史紀錄

✅ 方法一:git log -- <file-path> 查找檔案歷史紀錄

這是最常用的方法,可以讓你查看特定檔案的所有 commit 紀錄。

範例:

bash
git log -- path/to/your/file.txt

這個命令會列出所有與該檔案有關的 commit 記錄,包含每個 commit 的訊息、作者、日期等等。

顯示範例:

bash
commit abc1234def5678
Author: Your Name <your-email@example.com>
Date:   Tue Apr 20 14:34:56 2023 +0800

    修改了 file.txt

commit 1234abcd5678efg
Author: Another Developer <another-email@example.com>
Date:   Mon Apr 19 10:11:22 2023 +0800

    更新 file.txt

✅ 方法二:git log --follow -- <file-path> 查找檔案的歷史紀錄(即使檔案有改名或移動過)

如果檔案被重命名或移動過,使用 --follow 參數可以讓你追蹤檔案歷史,並包括檔案改名或移動後的紀錄。

範例:

bash
git log --follow -- path/to/your/file.txt

這個命令會顯示檔案的歷史紀錄,即使它曾經被移動或重命名。


✅ 方法三:查看特定檔案的變更細節(git log -p

如果你希望查看每個 commit 中該檔案的具體變更,可以使用 -p 參數來顯示每次 commit 的 diff。

範例:

bash
git log -p -- path/to/your/file.txt
git log -p --word-diff -- path/to/your/file.txt

這會顯示該檔案在每次 commit 中的具體改動,類似於 diff 的顯示方式。


✅ 方法四:查詢某個檔案特定版本的內容(git show

如果你知道某個 commit ID,可以直接查看檔案在該版本的內容。

範例:

bash
git show <commit-id>:path/to/your/file.txt

這會顯示特定 commit 中該檔案的內容。


✅ 方法五:使用 git blame 查找檔案每行的作者

如果你想了解檔案每一行是誰寫的,可以使用 git blame

範例:

bash
git blame path/to/your/file.txt

這會顯示每行代碼的作者、日期及其對應的 commit ID。


🔚 小結

目的指令
查找檔案所有歷史紀錄git log -- path/to/file
查找檔案歷史紀錄(含重命名或移動)git log --follow -- path/to/file
查看每個 commit 的具體變更git log -p -- path/to/file
查看特定 commit 的檔案內容git show <commit-id>:path/to/file
查詢檔案每行的作者git blame path/to/file

Contributors

The avatar of contributor named as lucashsu95 lucashsu95

Changelog