Кто-нибудь знает, как получать уведомления о фиксации / извлечении GitHub по электронной почте, включая полный отчет о коммите?
Я знаю о хуке почтовой службы, но это не вызывает различий.
Кто-нибудь знает, как получать уведомления о фиксации / извлечении GitHub по электронной почте, включая полный отчет о коммите?
Я знаю о хуке почтовой службы, но это не вызывает различий.
Ответы:
В настоящее время нет способа делать то, что вы хотите, используя только GitHub. Как отмечено в /programming/4211107/how-to-get-email-diffs-for-github-pushes , в GitHub нет поддержки для отправки электронных писем, включая diff. По этому поводу возникли две проблемы GitHub - http://github.com/github/github-services/issues/86 (закрыто) и http://github.com/github/github-services/issues/149, но хотя они говорят, что это то, что они могли бы реализовать в будущем, нет никаких признаков того, что это произойдет.
Тем не менее, если вы хотите запустить свой собственный (локальный или облачный, но со сценариями) веб-сервер или почтовый сервер с git-репозиторием, вы можете создать его самостоятельно, используя GitHub-уведомления после получения ( http: //help.github .com / статьи / пост-Receive-крюки) отправленные на ваш веб-сервер, или обычные (без различий) почтовые уведомления, отправленные на специальный адрес на вашем почтовом сервере. Выбор между веб-уведомлением и уведомлением по электронной почте будет сделан в зависимости от того, где и как вы размещаете свой сервер - если у вас хорошая связь и надежность, веб-уведомления будут иметь минимальную задержку, но если ваш веб-сервер недоступен по любой причине, вы не получите уведомление, пока не будет сделан следующий коммит, пока ваш веб-сервер доступен; использование электронной почты задержит весь процесс, но может быть предпочтительнее, если вы размещаете его дома, особенно на любом компьютере, который не всегда включен.
В любом случае вам придется написать скрипт, который принимает уведомление (по электронной почте или через web / JSON) и перетягивает соответствующие репозитории из GitHub в локальный репозиторий, где вам нужно будет настроить внутренний пост-Git. Получите механизм ловушек для запуска чего-то вроде http://github.com/jtek/git-hook-update-notify-email (упоминается в статье выше, посвященной stackoverflow) или если вы желаете и можете установить и использовать Pygments (код Python colorizer) возможно, что-то приятнее, похожее на http://blog.chomperstomp.com/making-git-show-post-receive-e-mails-as-an-html-color-formatted-diff/ (связано с https: //stackoverflow.com/questions/3232270/git-post-receive-email-hook-to-show-an-html-formatted-color-diff/ ).
Это небольшая работа со сценариями, требующая наличия некоторой хостинг-инфраструктуры для запуска веб- или почтового сервера, сценария local-pull, а затем локальной ловушки post-receive для генерации реальной электронной почты с помощью diff, но должно быть возможно установить это менее чем за день.