【问题标题】:How do I get notifications for commits to a GitHub repository?如何获得提交到 GitHub 存储库的通知?
【发布时间】:2012-03-23 19:51:10
【问题描述】:

我想知道对 Lithium 框架进行了哪些类型的提交,以便在出现重大问题时进行更新(或回滚)。

我已经在查看存储库,但据我所知,它只在 github 仪表板上显示更新。

【问题讨论】:

  • 交叉链接 this question 供只希望收到关于 repo 部分更改通知的人使用。

标签: git github change-notification


【解决方案1】:

订阅 Github 的 RSS 源!
选择您的新闻提要(所有已观看的存储库),或仅选择 Lithium 的提交历史记录。

RSS 就是为此而生的 ;-)

PS:我不知道你怎么能发现它有用,因为每天都会在各个分支上进行几次提交,一些小的错字修复,其他修复错误,还有一些引入新事物......

【讨论】:

【解决方案2】:

我只是偶然发现你可以很容易地做到这一点:

  • fork 项目(如果您还没有完成)
  • 从选定的分支为自己创建一个拉取请求,例如从 head 项目的主人到你的 fork 的主人:
    • 基础存储库:您的/项目; base: master head repository: original/project ; 比较:大师
  • 合并此拉取请求
  • Notifications 设置的电子邮件部分下启用:
    • 对问题和拉取请求的评论
    • 拉取请求评论
    • 拉取请求推送

就是这样。您将收到有关 master 分支上每个提交的电子邮件通知。

【讨论】:

  • 不确定这应该如何工作。我试过了,没有收到任何通知。除了this,我还需要做什么吗?
  • @rubo77,我已经用通知设置更新了解决方案(否则你的设置看起来不错)。
  • 啊好的,这是关于电子邮件通知的。我认为右上角带有蓝色铃铛的通知具有相同的设置。如果我现在收到电子邮件通知,我会尝试...
  • 我想我也得到了这些(但如果你阅读你的电子邮件,它们就会消失)。
  • 您可能需要删除最后一次提交。在 2021 年,我无法打开一个空 diff 的 PR:“没有什么可比较的。”所以我克隆了存储库,git reset HEAD~git push --force。然后我就能够按照这个答案中的建议创建 PR。
【解决方案3】:

除了其他建议之外,您还可以尝试HubNotify 发送电子邮件通知。

【讨论】:

【解决方案4】:

您可以利用 GitHub Events API 来执行此类任务并检索 JSON 格式的响应。

注意:为了检索提交,您必须过滤掉 PushEvents 类型的事件。

下面是一个快速示例

$(function() {
    $.getJSON('https://api.github.com/repos/UnionOfRAD/lithium/events?callback=?', function(data) {
        var list = $('#push-events');

        $.each(data.data, function(key, val) {
            if (val.type == "PushEvent") {
                $.each(val.payload.commits, function(key2, val2) {
                    list.append('<li id="' + val2.sha + '"><a href="https://github.com/UnionOfRAD/lithium/commit/' + val2.sha + '">'
                                + val2.message + '</a> [' + val.actor.login + ' @ ' + val.created_at + ']</li>');
                });
            }
        });
        
        if (list.children().size() == 0) {
            list.append('<li>No pushes in last ' + data.data.length + ' events.</li>');
        }
    });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<ul id="push-events"></ul>

【讨论】:

  • 所以我猜没有我可以检查的事件或通知设置?
  • 不幸的是,在调用 API 时无法过滤事件。一旦收到结果,这必须作为后处理步骤执行。
【解决方案5】:

免责声明:我是原作者。

This project 允许您在提交被推送到您正在监视的存储库(在任何分支上)时收到一封电子邮件。

说明:gicowa 是一个用 python 编写的命令行工具,它列出了你正在观看的所有 GitHub 存储库上的所有最后提交。该工具可以通过电子邮件发送其输出,并且可以从您的crontab 调用。这样做会使您每次在您正在观看的 GitHub 存储库上推送提交时都会收到电子邮件通知。

【讨论】:

    【解决方案6】:

    转到您的 github 项目 -> 设置 -> 通知。

    添加任何你想在提交完成时通知的地址。

    【讨论】:

    【解决方案7】:

    您进入 GitHub 存储库的 设置 > 集成和服务 并添加 电子邮件 服务。见Choosing the types of notifications you receive

    【讨论】:

    • 服务已被弃用。 developer.github.com/changes/…
    • 感谢您提供弃用信息。在this link 中描述了使用来自 GitHub 和 IFTTT 的 RSS 提要(如果存储库是私有的,则使用 OAuth 设置),或者当然可以使用 RSS 提要,以获取电子邮件以查看对 repos 的提交的另一种方法。阅读器。
    【解决方案8】:

    您可以使用 GitHub 网络挂钩并使用 push notification API 进行设置。这是免费且容易做到的。

    Spontit 是一个免费 API 示例,可让您执行此操作。

    有关教程,请参阅this video

    README here 中提供了书面说明。

    【讨论】:

      猜你喜欢
      • 2012-04-05
      • 2013-05-13
      • 2022-11-15
      • 2021-09-29
      • 1970-01-01
      • 2018-06-25
      • 1970-01-01
      • 2018-10-30
      • 1970-01-01
      相关资源
      最近更新 更多