Wo finde ich gute Vorlagen für SVN-Commit-E-Mails?Pretty SVN Commit E-Mails: Vorlagen
Google führte mich zu this. Obwohl es viel besser war als die default post-commit, fand ich es nicht sehr nützlich.
Hilfe sehr geschätzt.
Wo finde ich gute Vorlagen für SVN-Commit-E-Mails?Pretty SVN Commit E-Mails: Vorlagen
Google führte mich zu this. Obwohl es viel besser war als die default post-commit, fand ich es nicht sehr nützlich.
Hilfe sehr geschätzt.
Ich habe eine Kombination aus SVNSpam und den systemeigenen Python-Skripten gefunden, die sehr gut funktionieren. SVNSpam sendet eine HTML-Email mit farbigen Diffs, die wirklich leicht zu lesen sind.
Es gibt einen Fehler in SVNSpam, der es nicht erlaubt, mit Binärdateien umzugehen. Also habe ich im Post-Commit-Hook das übliche Python-Mailer-Skript eingerichtet, das mit dem SVN Hooks-Paket geliefert wird. Ich habe es so, dass, wenn SVNSpam einen Fehlercode zurückgibt (und dies nur für Binär-Diffs und Tagging tut), das Python-Mailer-Skript aufgerufen wird. Das erledigt alles sehr gut für uns.
Ich verwende diese: commit-email.pl
und Post commit:
REPOS="$1"
REV="$2"
MAILNAME=`cat /etc/mailname`
REPONAME=$(basename $REPOS)
/var/local/lib/svn/commit-email.pl "$REPOS" "$REV" -s "[$REPONAME]" -h $MAILNAME --from "SVN" [email protected]
das ist die Standardeinstellung, auf die ich hingewiesen habe, das ist überhaupt nicht hübsch –
Sie können die Daten verpflichten bekommen von 'svn log --xml -v -r $ REV' und filtern die Ausgabe über einen XSLT-Prozessor. Es gibt einige Projekte, die diesen Workflow verwenden, z. B. RSS Generator oder changelog generator.
Ich finde this one ziemlich nützlich, weil es ein diff enthält.
Eine gute Vorlage würde einen Link zu einem Review-Board (Chatroom über die Revision) und die Case-ID enthalten. Es muss auch jede geänderte Datei als Link zu einigen websvn diff haben.
Das Skript aus http://blog.hungrymachine.com/2007/11/5/pretty-svn-commit-emails/ generiert zusätzliche Zeilenumbrüche für den Änderungssatz. Sie können diese zusätzlichen Zeilenumbrüche durch Entfernen ‚\ n‘ vom Ende der Linie 52.
52 body << %Q{<font style="color:#{color}">#{CGI.escapeHTML(line)}</font><br/>\n}
SVNNotify nicht perfekt ist, zu beseitigen, sind aber wirklich gut
Was meinst du hübsch? HTML? –