Есть ли крючки для GitHub хранилищ wiki? Есть ли другой механизм, который GitHub предоставляет мне для отслеживания изменений вики?
Как вы можете отслеживать или получать уведомления об изменениях в GitHub wikis?
Ответ 1
Push-подход: В документации API GitHub вы можете найти документацию о настройке сервисные перехватчики, которые могут запускаться для одного или нескольких событий. Событие gollum
особенно повышается в любое время, когда обновляется страница wiki.
Подход, основанный на JSON:. Вы также можете использовать HTTP-API событий для получения форматированного JSON-вывода что происходит на GitHub, затем примените некоторую фильтрацию, чтобы изолировать события типа 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 GitHub в репозитории, выберите вкладку Pages
, наведите указатель мыши на оранжевую иконку, скопируйте ссылку и вставьте ее в свой любимый RSS-ридер.
Обновление:
Похоже, что значок RSS-канала больше не отображается для вики.
Однако вы все равно можете создать URL-адрес самостоятельно
- Синтаксис:
https://github.com/:user/:repository/wiki.atom
- Пример: https://github.com/holman/spark/wiki.atom
Ответ 2
Я установил работу Дженкинса, чтобы вытащить нашу вики GitHub из https://github.com/IQSS/dvn.wiki.git с помощью триггера сборки @daily. На этапе сборки я выполняю команду оболочки, подобную этой, чтобы отправить нам по электронной почте:
echo "Обновлена вики DVN на GitHub. Проверьте новый контент на https://github.com/IQSS/dvn/wiki/_history" | mail -s "[dvn-wiki-notifications] обнаружено обновление" [email protected]
Вот работа, если кто-то хочет увидеть: https://build.hmdc.harvard.edu:8443/job/dvn-wiki-notifications/