Gibt es eine Möglichkeit, GitHub Commit-Benachrichtigungen einschließlich des Diff senden zu lassen?
11
Kennt jemand eine Möglichkeit, GitHub-E-Mail-Commit / Pull-Anforderungsbenachrichtigungen zu erhalten, einschließlich des vollständigen Unterschieds des Commits?
Ich kenne den E-Mail-Service-Hook, aber das sendet den Unterschied nicht.
Halten Sie jedoch nicht den Atem an, github.com/github/github-services/issues/86 wurde im April geschlossen, sodass es unwahrscheinlich ist, dass sie mit Ausgabe 149 etwas unternehmen werden.
@Alex - Möchten Sie Ihren Kommentar als Antwort veröffentlichen, um diese Frage von der Titelseite unbeantworteter Fragen zu entfernen?
Shannon Wagner
@ ShannonWagner - so gepostet. Ich habe mir sogar einen Weg ausgedacht, um alles mit lokalen Ressourcen und anderen Tools zu verwirklichen, aber die Anweisungen sind nur eine grobe Darstellung, und um dies zu erreichen, wären Skripte, Montage und Batterien nicht enthalten.
Wenn Sie jedoch bereit sind, einen eigenen (lokal oder in der Cloud gehosteten, aber mit Skripten versehenen) Web- oder E-Mail-Server mit Git-Repository zu betreiben, können Sie diesen selbst mithilfe von GitHub-Benachrichtigungen nach dem Empfang ( http: //help.github) erstellen .com / articles / post-receive-hooks) an Ihren Webserver gesendet oder normale (ohne Unterschiede) E-Mail-Benachrichtigungen an eine spezielle Adresse auf Ihrem E-Mail-Server gesendet. Die Wahl zwischen Web- und E-Mail-Benachrichtigung hängt davon ab, wo und wie Sie Ihren Server hosten. Wenn Sie über eine gute Konnektivität und Zuverlässigkeit verfügen, haben Webbenachrichtigungen die geringste Latenz, wenn Ihr Webserver jedoch aus irgendeinem Grund nicht erreichbar ist. Sie erhalten erst beim nächsten Commit eine Benachrichtigung, wenn Ihr Webserver erreichbar ist. Die Verwendung von E-Mail verzögert den gesamten Vorgang, ist jedoch möglicherweise vorzuziehen, wenn Sie dies zu Hause hosten, insbesondere für Computer, die nicht immer eingeschaltet sind.
Es ist ein bisschen Skriptarbeit und erfordert, dass Sie über eine Hosting-Infrastruktur verfügen, um den Web- oder E-Mail-Server, das Local-Pull-Skript und dann den lokalen Post-Receive-Hook auszuführen, um die eigentliche E-Mail mit Diffs zu generieren Es sollte möglich sein, dies in weniger als einem Tag einzurichten.
Antworten:
Derzeit gibt es keine Möglichkeit, mit GitHub das zu tun, was Sie wollen. Wie unter /programming/4211107/how-to-get-email-diffs-for-github-pushes angegeben , gibt es in GitHub keine Unterstützung für das Senden von E-Mails einschließlich Diffs. Es wurden zwei GitHub-Probleme aufgeworfen, die diesbezüglich gefragt wurden: http://github.com/github/github-services/issues/86 (geschlossen) und http://github.com/github/github-services/issues/149, aber obwohl Sie sagen, dass dies etwas ist, das sie in Zukunft implementieren könnten. Es gibt keinen Hinweis darauf, dass dies passieren wird.
Wenn Sie jedoch bereit sind, einen eigenen (lokal oder in der Cloud gehosteten, aber mit Skripten versehenen) Web- oder E-Mail-Server mit Git-Repository zu betreiben, können Sie diesen selbst mithilfe von GitHub-Benachrichtigungen nach dem Empfang ( http: //help.github) erstellen .com / articles / post-receive-hooks) an Ihren Webserver gesendet oder normale (ohne Unterschiede) E-Mail-Benachrichtigungen an eine spezielle Adresse auf Ihrem E-Mail-Server gesendet. Die Wahl zwischen Web- und E-Mail-Benachrichtigung hängt davon ab, wo und wie Sie Ihren Server hosten. Wenn Sie über eine gute Konnektivität und Zuverlässigkeit verfügen, haben Webbenachrichtigungen die geringste Latenz, wenn Ihr Webserver jedoch aus irgendeinem Grund nicht erreichbar ist. Sie erhalten erst beim nächsten Commit eine Benachrichtigung, wenn Ihr Webserver erreichbar ist. Die Verwendung von E-Mail verzögert den gesamten Vorgang, ist jedoch möglicherweise vorzuziehen, wenn Sie dies zu Hause hosten, insbesondere für Computer, die nicht immer eingeschaltet sind.
In beiden Fällen müssten Sie ein Skript schreiben, das die Benachrichtigung (E-Mail oder Web / JSON) entgegennimmt und die entsprechenden Repos von GitHub in ein lokales Repository zieht, in dem Sie die interne Post von Git einrichten müssen. Empfangen Sie einen Hook-Mechanismus, um so etwas wie http://github.com/jtek/git-hook-update-notify-email (im obigen Artikel zum Stackoverflow erwähnt) auszuführen oder wenn Sie bereit und in der Lage sind, Pylements (Python-Code) zu installieren und zu verwenden Colorizer) vielleicht etwas Schöneres wie http://blog.chomperstomp.com/making-git-show-post-receive-e-mails-as-an-html-color-formatted-diff/ (verlinkt mit / von https: //stackoverflow.com/questions/3232270/git-post-receive-email-hook-to-show-an-html-formatted-color-diff/ ).
Es ist ein bisschen Skriptarbeit und erfordert, dass Sie über eine Hosting-Infrastruktur verfügen, um den Web- oder E-Mail-Server, das Local-Pull-Skript und dann den lokalen Post-Receive-Hook auszuführen, um die eigentliche E-Mail mit Diffs zu generieren Es sollte möglich sein, dies in weniger als einem Tag einzurichten.
quelle