我知道某种格式看起来像master@{"1 day ago"}
,但我无法弄清楚如何使用某些内容(以友好的方式)过滤git reflog
的输出只是最后X个时间。
我试过了git reflog --since="2 days ago"
,但它肯定没有给我我期望的结果(因为它产生的3个结果都与我当前的分支相关,而{{1}中的前36个条目来自今天)。
主要是我只需要一份从今天开始创建的所有(可能是孤立的)提交的列表。因为有些狗屎掉了下来,我需要查看所有未能用分支指针标记的提交,因为我可能会或者可能没有重新设置错误的东西。
与此同时,我想出的唯一方法是使用手动工作流程:
git reflog
这会生成一个单行空间分隔的提交哈希集,其中应该包含我今天所提交的所有提交,并且我通过反复试验发现,如果我只是将它传递给我的幻想git reflog --date=relative | head -n 36 | cut -d' ' -f 1 | uniq | tr '\n' ' '
别名它将它们有助于将它们注入它们所属的图形中,并且我可以通过这种方式重新获得一些理智。
与我发现的任何合理可回收的git相关功能一样,我喜欢尝试在脚本或至少一些StackOverflow面包屑中进行概括,以便下次发生这种情况时我可以更好地学习如何快速完成。
一个方便的别名,让我运行我的典型git log --graph
,但添加了查看该图中的所有孤立提交将是惊人的。但是我绝对想限制它,只是在最后一天向我展示这样的提交。
答案 0 :(得分:1)
我确认,在我在“commit 3ab01ac”中提到的How to properly use git reflog --since=…
?之后重新编译Git后,reflog确实按预期工作:
{{1}}
它是upcoming 2.14.2 release的一部分,应该很快就会出来。