Подтвердить что ты не робот

Генерация журнала из вопросов Github?

Есть ли способ автоматически генерировать журнал изменений из проблем Github?

В идеале я хочу иметь возможность указать на закрытую веху и создать либо простой текстовый список закрытых выпусков с их названиями, либо, что еще лучше, список с разметкой для ссылок на проблемы и название самих проблем.

4b9b3361

Ответ 1

Вы можете попробовать использовать Github-Changelog-Generator. (Я автор этого проекта)

Он генерирует журнал изменений из тегов и объединенных запросов pull-запросов. Этот script также имеет поддержку проблем GitHub.

Этот журнал изменений был создан этим script. CHANGELOG.md

Пример:

Changelog

1.2.5 (2015-01-15)

Полный список изменений

Реализованные улучшения:

  • Используйте веху, чтобы указать, в какой ошибке была исправлена ​​ошибка # 22

Исправлены ошибки:

  • Ошибка при попытке создания журнала для репо без тегов # 32

Объединенные запросы на тягу:

  • Класс PrettyPrint включен с использованием строчного "pp" # 43 (schwing)

  • поддержка github для предприятий через параметры командной строки # 42 (glenlovett)

Ответ 2

Это не для Github, но через Git вы можете запустить журнал через довольно печатную версию, чтобы создать html-страницу стиля изменения.

От https://coderwall.com/p/5cv5lg

git log v2.1.0...v2.1.1 --pretty=format:'<li> <a href="http://github.com/jerel/<project>/commit/%H">view commit &bull;</a> %s</li> ' --reverse | grep "#changelog"

Ответ 3

Вы можете использовать API GitHub, чтобы получить список проблем, связанных с данной вехой. Например:

curl https://api.github.com/repos/<user>/<project>/issues\?milestone\=1\&state\=closed

замените <user> и <project> на имя пользователя и проект, и это вернет json список всех закрытых вопросов вехи с идентификатором 1. Вы можете, например, использовать script для извлечения интересующей вас информации. Вот пример python, который печатает список проблем как реструктурированный текст:

import json

with open("issues.json") as of:
    data = json.load(of)

for issue in data:
    t = issue['title']
    n = issue['number']
    url = issue['html_url']
    print "* %s [`Issue %s <%s>`_]" % (t, n, url)

Ответ 4

Посмотрите, будет ли для вас следующий инструмент github-changes.

Раскрытие информации: Я являюсь автором этого инструмента.

Ответ 5

Мы создали проект с открытым исходным кодом для генерации журнала изменений из списка закрытых проблем github с момента дат-времени. Он доступен здесь: https://github.com/piwik/github-changelog-generator

Ответ 6

Не напрямую через GitHub: это будет своего рода крюк, который вы могли бы установить, и который будет основан на соглашении об именах или соглашении комментариев, которое может следовать вашему проекту.
Даже использование заголовка проблем не всегда является верным способом создания значимого журнала изменений, если вы не просмотрите и не отредактируете, если необходимо, все названия проблем вашего проекта.

Другими словами, это очень зависит от того, как вы управляете своим проектом и не просто обобщены на все репозитории GitHub.
Я сказал так же очень похожим вопросом: Опубликовать выпуск проекта (бинарные/исходные пакеты) в Github?".

Ответ 7

Я помог недавно создать плагин jQuery, который использует проблемы GitHub для передачи обновлений приложений непосредственно пользователю. Репо можно найти здесь https://github.com/uberVU/github-changelog

Использование довольно просто:

$(function() {
  var $demoChangelog = $('.demo-changelog');

  //call the plugin on a dom none
  $demoChangelog.changelog({
    //give it a repo to monitor
    githubRepo: 'uberVU/github-changelog-playground',
  });

  //manually check for new closed issues
  $('.demo-button').on('click', function(e) {
    e.stopPropagation();
    $demoChangelog.changelog('checkForUpdates');
  });
});