2012-06-09 3 views
1

Subversion (VisualSVN dans mon cas) vous permettent de le coup d'envoi des scripts à plusieurs reprises, comme pre-commit, post-commets etc. Je veux envoyer une notification par e-mail contenant les informations suivantes lorsqu'une validation se produit:Comment puis-je obtenir des informations plus pertinentes dans les hooks VisualSVN?

  • SVN utilisateur qui comitted
  • Commentaire que l'utilisateur est entré
  • le nom de la pension qui a été commis à
  • Liste des fichiers modifiés
  • Transaction ID

Malheureusement, les crochets ne semblent fournir qu'une partie de cette information. Le hook post-commit fournit uniquement le nom du repo et l'ID de transaction. Le start-commit a le nom d'utilisateur et de repo, mais pas l'ID de transaction. Et je ne peux pas trouver de crochets qui fournissent le message de validation ou la liste des fichiers modifiés.

Existe-t-il un moyen de rendre ces informations disponibles pour les hooks? Et si ce n'est pas le cas, y a-t-il un autre moyen de poster cette information par commit?

Répondre

1

Vous pouvez utiliser svnlook commande pour obtenir cette information sur la révision: http://www.visualsvn.com/support/svnbook/ref/svnlook/

Sinon, vous pouvez utiliser la commande VisualSVN serveur intégré dans le courrier électronique notification VisualSVNServerHooks.exe. Il suffit d'ajouter la commande suivante pour vous post-commit hook:

"%VISUALSVN_SERVER%\bin\VisualSVNServerHooks.exe"^
    commit-notification "%1" -r %2^
    --from [email protected] --to [email protected]^
    --smtp-server smtp.example.com 

Vous pouvez trouver plus d'informations dans KB18: http://www.visualsvn.com/support/topic/00018/

+1

Merci Ivan. 'svnlook' est ce que je cherchais. Je ne pense pas que VisualSVNServerHooks.exe soit suffisant, mais combiné avec 'svnlook' nous sommes bons. –

+0

@ Mr.Flibble Pouvez-vous partager le '..hooks.exe' plus le code combiné 'svnlook'? –

Questions connexes