【问题标题】:List git commits to master branch between two dates列出两个日期之间对 master 分支的 git 提交
【发布时间】:2019-12-15 07:01:09
【问题描述】:

如何获取 2014 年 1 月 1 日至 2014 年 6 月 30 日期间对主分支完成的所有 git 提交的列表?

我知道git log 会给我大致的这种格式(对所有提交重复):

commit <hash>
author: <author name>
date: <date>
<comment>

但如何将其限制为选定日期和每个提交格式一行?

<hash> <author> <date>
<hash> <author> <date>

【问题讨论】:

标签: git git-log


【解决方案1】:

好吧,这应该可以解决问题:

git log --oneline --since="1/1/2014" --until="30/6/2014"

【讨论】:

  • 不过,这不是所要求的格式。只需散列并提交消息
  • @TimCastelijns 是的,我知道这一点,但在我设法修复它之前,你发布了你的答案,而我正忙着投票修复我的问题;)
  • @4rlekin 请将since 更改为--since
【解决方案2】:
$ git log --since "DEC 1 2014" --until "DEC 5 2014" --pretty=format:"%h %an %ad"

这将为 2014 年 12 月 1 日至 2014 年 12 月 5 日之间的提交提供您想要的格式,您可以随意更改日期

如果你想改变格式,你可以read about the options here

【讨论】:

  • 在最后添加这个以将输出写入文件&gt; output
【解决方案3】:
$ git log master --pretty="%h %an %ad" --since=2014-01-01 --until=2014-06-30

这里是所有http://git-scm.com/docs/git-log

【讨论】:

  • 泰。一点,因为您包括分支和首选日期格式
  • 这很完美,因为我的脚本已经使用了这种日期格式
【解决方案4】:

你试过了吗

git whatchanged --since="2 year ago" --until="1 year ago" [--author="NAME_OF_THE_AUTHOR"]

甚至可以使用git log 来获得此结果。 git log中提供了一些高级选项

git log --after="2014-7-1" --before="2014-7-4"

关于高级 git log 的更多详细信息,您可以参考这个link

【讨论】:

    猜你喜欢
    • 2019-11-12
    • 2017-08-29
    • 2017-11-15
    • 2023-03-15
    • 2017-05-30
    • 2021-03-04
    • 1970-01-01
    • 2015-11-18
    相关资源
    最近更新 更多