2009-04-30 8 views
15

Sto usando un repository di subversion e voglio sapere quando qualcuno chiede al mio deposito un checkout; come un 'svn co' o un 'svn up'. C'è un hook o qualche altro metodo che posso usare in modo che venga eseguito uno script, o inviato via email, ogni volta che qualcuno richiede informazioni dal mio server SVN? Come posso ottenere ciò senza fare affidamento sui log di apache?C'è un hook di Subversion Checkout o qualcosa di simile?

BTW è un repository piuttosto semplice pensato solo per scopi didattici.

(Se avete bisogno di ulteriori informazioni, allora basta chiedere Grazie in anticipo..)

risposta

10

Di seguito sono riportati tutti i ganci supportati in Subversion 1.5, dal Version Control with Subversion libro:

  • inizio-commit
  • pre-commit
  • post-commit
  • pre-revprop-change
  • post-rev Prop-cambiamento
  • pre-lock
  • post-blocco
  • pre-sbloccare
  • post-sbloccare

Non c'è nessun gancio pre-out o pre-aggiornamento come si descrive.

5

Se si utilizza TortoiseSVN, è possibile accedere a client-side hooks.

+0

+1 buona soluzione se è necessario controllare e gestire le configurazioni client in ogni caso, ad esempio per le impostazioni autoprop –

0

Si può fare tutto ciò che si desidera usando Apache come server SVN e (ad esempio) mod_perl per collegarsi alle richieste. Forse i file di registro mostrano già le informazioni che desideri.

SVN via SSH dovrebbe anche essere possibile: Analizzare i comandi avviati dal client SVN e avvolgerli (ad esempio, rinominando il file binario originale con estensione ".orig" e inserendo uno script (shell) in tale posizione.