Git - 如何列出在两个时间之间主分支上所有更改的文件?

4

我想找出在主分支(或任何一个分支)中两个日期之间已修改的所有文件。

我从这篇文章(How to list the file names only that changed between two commits?)了解到可以使用

git diff --name-only SHA1 SHA2

但是,我不知道今天和昨天之间的SHA值。尤其是当一天中有多个提交时。

更确切地说,我想知道在今天上午12:01到昨天上午12:01之间更改的文件列表。

这可能吗?我曾经可以在CVS中使用cvs diff -D "1 days ago"


这可能不是正确的信息,因为在此期间可能发生了合并,但提交时间较早。 - kofemann
那么合并操作不会在执行 git diff 时将文件列出来,是吗? - EMiller
1个回答

5

Git有一个使用reflog的功能,可以获取一个名称在任意时间之前所处的位置。

git diff --name-only master@{1 day ago} master

这将给你一个关于 master 在现在之前一天的位置和现在位置之间的差异。

3
必须在“1天前”周围添加引号,但运作正常!谢谢。 - EMiller
这给了我一个致命错误:模糊参数'master@':未知的修订版本或路径不在工作树中。 - jbyrd

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接