Existe-t-il un moyen pour que GitHub envoie des notifications de validation, y compris le diff?


11

Quelqu'un connaît-il un moyen de recevoir des notifications de demande de validation / extraction par e-mail GitHub, y compris la différence complète de la validation?

Je connais le crochet du service de messagerie, mais cela n'envoie pas la différence.


Vous voudrez peut-être jouer sur github.com/github/github-services/issues/149 - les hooks de service n'ont même pas la différence
Alex Dupuy

Ne retenez pas votre souffle, cependant, github.com/github/github-services/issues/86 a été fermé en avril, il semble donc peu probable qu'ils fassent quoi que ce soit avec le problème 149.
Alex Dupuy

Cette question a reçu une réponse (négative, principalement) sur stackoverflow.com/questions/4211107/…
Alex Dupuy

@Alex - Souhaitez-vous publier votre commentaire en tant que réponse pour aider à déplacer cette question de la première page des questions sans réponse?
Shannon Wagner

@ShannonWagner - donc publié. J'ai même trouvé un moyen de faire en sorte que tout cela se produise, en utilisant des ressources locales et d'autres outils, mais les instructions ne sont qu'un aperçu approximatif, et pour y arriver, il faudrait des scripts, l'assemblage et les piles non inclus.
Alex Dupuy

Réponses:


3

À l'heure actuelle, il n'y a aucun moyen de faire ce que vous voulez en utilisant uniquement GitHub. Comme indiqué dans /programming/4211107/how-to-get-email-diffs-for-github-pushes , il n'y a pas de support dans GitHub pour envoyer des e-mails, y compris des différences. Il y a deux problèmes GitHub posés à ce sujet - http://github.com/github/github-services/issues/86 (fermé) et http://github.com/github/github-services/issues/149 mais bien que ils disent que c'est quelque chose qu'ils pourraient mettre en œuvre à l'avenir, rien n'indique que cela se produira.

Cela dit, si vous êtes prêt à exécuter votre propre serveur Web ou de messagerie (local ou hébergé dans le cloud, mais avec des scripts) avec le référentiel git, vous pouvez le créer vous-même à l'aide des notifications post-réception de GitHub ( http: //help.github .com / articles / post-recevoir-crochets) envoyés à votre serveur Web, ou des notifications par courrier électronique normales (sans différences) envoyées à une adresse spéciale sur votre serveur de messagerie. Le choix entre la notification Web et la notification par e-mail dépendra de l'endroit et de la façon dont vous hébergez votre serveur.Si vous disposez d'une bonne connectivité et fiabilité, les notifications Web auront la latence la plus faible, mais si votre serveur Web est inaccessible pour une raison quelconque, vous ne recevrez pas de notification avant le prochain commit effectué pendant que votre serveur web est accessible; l'utilisation du courrier électronique retardera l'ensemble du processus, mais pourrait être préférable si vous l'hébergez à la maison, et en particulier pour toute machine qui n'est pas toujours allumée.

Dans les deux cas, vous devrez écrire un script qui prend la notification (par e-mail ou Web / JSON) et extrait les référentiels pertinents de GitHub vers un référentiel local, où vous devrez configurer la publication interne de Git. recevoir le mécanisme de hook pour exécuter quelque chose comme http://github.com/jtek/git-hook-update-notify-email (mentionné dans l'article stackoverflow ci-dessus) ou si vous êtes prêt et capable d'installer et d'utiliser Pygments (code Python colorizer) peut-être quelque chose de plus agréable ressemblant à http://blog.chomperstomp.com/making-git-show-post-receive-e-mails-as-an-html-color-formatted-diff/ (lié à / depuis https: //stackoverflow.com/questions/3232270/git-post-receive-email-hook-to-show-an-html-formatted-color-diff/ ).

C'est un peu de travail de script et nécessite que vous ayez une infrastructure d'hébergement pour exécuter le serveur Web ou de messagerie, le script local-pull, puis le hook post-réception local pour générer le courrier électronique réel avec des différences, mais cela devrait être possible en moins d'une journée.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.