如何找到子模块添加到Git的时间

时间:2013-05-08 10:08:33

标签: git grep git-submodules git-log

我想知道添加特定子模块时的提交,换句话说我想知道修改.gitmodules文件的提交以添加以下内容

[submodule "submodule1"]
        path = submodule1
        url = git@bitbucket.org:{user}/submodule1.git

我使用以下内容获取.gitmodules的所有提交

$ git log -p --follow .gitmodules
commit commit#
Author: auther
Date:   Date

    Description

diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 0000000..84a18f8
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,3 @@
+[submodule "submodule1"]
+       path = submodule1
+       url = git@bitbucket.org:{user}/submodule1.git

在这种情况下只有一个提交,但是如果有其他提交添加/删除其他子模块,我如何过滤提交以获得唯一添加了子模块1的提交

由于

1 个答案:

答案 0 :(得分:0)

只需输入$ git log submodule1,最旧的提交就是您想要的。

或者您可以添加--reverse选项,第一次提交就是您想要的。

请注意,您无法将其键入$ git log submodule1/,这可能会被bash自动填充。

从这个问题开始,Find commit where file was added

您可以输入git log -p --diff-filter=A -- submodule1