【问题标题】:How to show git changes pushed in the last 24 hours?如何显示过去 24 小时内推送的 git 更改?
【发布时间】:2012-09-24 16:46:24
【问题描述】:

我熟悉 git log --since="24 hours ago" 的语法,它显示了过去 24 小时内提交(提交到作者本地存储库)的更改。

我们有一个开发人员团队,他们不断地在本地进行提交,然后每两天左右才推送一次这些更改。如果这是真的,那么git log --since="24 hours ago" 将永远不会列出这些更改。 (我们将其用于夜间摘要电子邮件)

我真正希望看到的是:在过去 24 小时内推送到 master 的更改,并且能够做到这一点,而无需手动记住我们的摘要脚本上次运行的提交哈希。

【问题讨论】:

    标签: git git-log


    【解决方案1】:

    你可以使用这样的命令,在你的开发者推送的服务器上运行它:

    git reflog master --since="24 hours ago"
    

    不幸的是,git fetch 和类似命令似乎不会传输此信息,并且在本地运行 git reflog origin/master 会从集线器中检索 pull 的历史记录。

    【讨论】:

      【解决方案2】:

      git 本身不会跟踪推/拉事物的元数据。正如 user4815162342 的回答中所指出的,有些事情可以与猜测相关联(引用日志、文件时间戳等),但这不是一个完美的解决方案。如果您使用的是git daemon,则可以将其设置为记录每个连接,并且您的 Web 服务器也可以为 http/https 连接执行相同的操作。您还可以设置一些挂钩(特别是接收前或接收后的挂钩)来为您捕获一些信息。

      【讨论】:

        猜你喜欢
        • 2013-04-11
        • 1970-01-01
        • 2012-07-05
        • 1970-01-01
        • 1970-01-01
        • 2013-02-08
        • 1970-01-01
        • 1970-01-01
        • 2018-02-13
        相关资源
        最近更新 更多