可以說我有一個git repo,看起來像這樣。如何顯示git repo子目錄的git日誌歷史記錄?
foo/
.git/
A/
... big tree here
B/
... big tree here
有沒有辦法讓git log只顯示特定目錄的日誌消息。例如,我想查看foo/A中提交的文件是什麼?
可以說我有一個git repo,看起來像這樣。如何顯示git repo子目錄的git日誌歷史記錄?
foo/
.git/
A/
... big tree here
B/
... big tree here
有沒有辦法讓git log只顯示特定目錄的日誌消息。例如,我想查看foo/A中提交的文件是什麼?
從目錄foo/
,使用
git log -- A B
你需要 ' - ' 從<since>..<until>
refspecs分離<path>..
。
$ git log --oneline -- src/nvfs
d6f6b3b Changes for Mac OS X
803fcc3 Initial Commit
$ git log --oneline 803fcc3 -- src/nvfs
803fcc3 Initial Commit
$ git log --oneline
d6f6b3b Changes for Mac OS X
96cbb79 gitignore
803fcc3 Initial Commit
您可以使用git log
與各自的文件夾的路徑名:
git log A B
日誌將只顯示在A
和B
提交了幾次。我通常會拋出--stat
使事情變得更漂亮,這有助於快速提交評論。
git log -p
是非常有用的,如果你需要所有更改文件的完全差異。
例如:顯示在特定的版本範圍
git log -p 8a5fb..HEAD -- .
commit 62ad8c5d
Author: Scott Tiger
Date: Mon Nov 27 14:25:29 2017 +0100
My comment
...
@@ -216,6 +216,10 @@ public class MyClass {
+ Added
- Deleted
順便說一下所有詳細的變化,你應該留在「富」 foldrer前做「git的日誌 - AB」 – 2016-03-10 15:40:51
對於人們脫脂閱讀,這顯示了'A' _and_' B'的變化,而不僅僅是'A',因爲OP要求 – aidan 2018-01-29 05:55:29
這個問題對我來說是一條很長的路徑...... – AKS 2018-02-03 04:16:21