Git:显示在给定工作日的所有提交记录

9
我能看到所有在周日提交的修改吗?这指的是任何和所有的周日。
4个回答

7
根据jingx的答案,以下内容将向您展示所有在星期日进行的提交日志。
git log --pretty='format:%h %cd' | grep 'Sun' |  awk '{print $1}' | while read rev; do
    git show $rev | head -6
done

说明

git log --pretty='format:%h %cd' 给出了所有提交的SHA值和提交日期的简短日志。这些日期也包含星期几。

grep 'Sun' 过滤掉日志中所有包含'Sun'的行,即所有在周日进行的提交。

awk '{print $1}' 提取了这些行的第一个单词,即每个提交的SHA值。

while read rev 循环遍历从前面的awk提取的每个SHA值。在每次迭代中,SHA值将存储在变量rev中。

git show $rev 显示具有SHA $rev的提交的日志。

head -6 提取该日志的前6行。


4

类似于以下内容:

git log --pretty='format:%h %cd' |grep Sun

1

jingx的答案是正确的,已经得到了赞同!

我只想提一下,有时候我也想检索相同类型的特定信息,比如:

  • -9 GMT小时
  • 33
  • Fri 13th
  • 1337个文件中
  • 带有777影响插入 - 删除

...我发现git log接口有点不够。但数据是存在的!

因此,我创建了https://github.com/dreamyguy/gitlogg,将任意数量的仓库提交解析为一个方便清理的JSON文件。享受吧!


0

你可以尝试使用:

--since and --until

git log 命令的关键字。


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