39

GitHub wiki 存储库是否有服务挂钩?GitHub 是否为我提供了一些其他机制来跟踪 wiki 编辑?

4

2 回答 2

32

推送方法:GitHub API 文档中,您可以找到有关设置可以为一个或多个事件触发的服务挂钩的文档。gollum每当更新 wiki 页面时,都会特别引发该事件。

基于 JSON 的拉取方法:您还可以利用Events HTTP API来检索 GitHub 上发生的事情的 JSON 格式输出,然后应用一些过滤以隔离类型的事件GollumEvent

下面是一个基于 jQuery 的快速示例

<html>
    <head>
        <title>Gollum events</title>
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
        <script type="text/javascript">
            $(function() {
                $.getJSON('https://api.github.com/repos/holman/spark/events?callback=?', function(data) {

                    var list = $('#gollum-events');

                    $.each(data.data, function(key, val) {
                        if (val.type == "GollumEvent") {
                            $.each(val.payload.pages, function(key2, val2) {
                                list.append('<li id="' + key + '.' + key2 + '"><a href="' + val2.html_url + '">' + val2.page_name + '</a> [' + val.actor.login + ' @ ' + val.created_at + ']</li>');
                            });
                        }
                    });
                });
            });
        </script>
    </head>
    <body>
        <ul id="gollum-events"/>
    </body>
</html>

基于 Atom 的拉取方法:最后但同样重要的是,您可以订阅 wiki 更改 atom 提要。转到存储库的 GitHub Wiki 部分,选择Pages子选项卡,将鼠标悬停在橙色图标上,复制链接并粘贴到您喜欢的 RSS 阅读器中。

订阅更改

更新:

似乎不再为 wiki 显示 RSS 提要图标。

但是,您仍然可以自己构建 URL

于 2011-12-20T10:21:35.677 回答
3

我设置了一个 Jenkins 作业,使用 @daily 的构建触发器从https://github.com/IQSS/dvn.wiki.git拉取我们的 GitHub wiki。在构建步骤中,我正在执行一个类似这样的 shell 命令给我们发送电子邮件:

echo "GitHub 上的 DVN wiki 已更新。请在https://github.com/IQSS/dvn/wiki/_history上查看新内容" | mail -s "[dvn-wiki-notifications] 检测到更新" dvn@example.com

如果有人想看看,这就是这份工作:https ://build.hmdc.harvard.edu:8443/job/dvn-wiki-notifications/

于 2013-10-30T13:59:01.377 回答