2016-05-27 50 views
4

我的要求是获取文件夹列表,这些文件夹在特定日期后对文件进行了一些修改。我们可以输入git命令输出到另一个git命令

我尝试并获得以下命令从中我可以得到一些细节:

该命令列出了在此日期之后所做提交(2016-05-26):

git log --date=short --after=2016-05-26 --pretty=format:"%h" 

输出:

5761f52 
7c589b8 
1ee709d 

此命令列出在此提交中更改的文件名(5761f52):

git show --pretty="format:" --name-only 5761f52 

输出:

Dummy/Dummy_file.java 

后反而每次提交检查的,有没有什么办法来获取列表中集团承诺的?

回答

0

Mureinik答案似乎对我有好处。但是,如果你不同意,你可以使用一个循环bash命令行

for commit in `git log --date=short --after=2016-05-26 --pretty=format:"%h"` 
do 
echo "====== Commit $commit is beeing analyzed ======"; 
git show --pretty="format:" --name-only $commit; 
done 
+0

谢谢流你的答案帮助了我。此外,我稍微修改了Mureinik回答'git log --pretty =“格式:”--name-only --after = 2016-05-24“它也起作用。 –

+0

如果它适合您,请您接受我的答案吗?或者如果您需要更多帮助,请添加评论。谢谢。 – Flows

0

您也可以通过--name-onlygit diff。假设你的参考日志回溯得足够远,你可以使用:

git diff --name-only [email protected]{2016-05-26}