2011-01-27 11 views
6

Ci sono due argomenti messi in hook post-commit in SVN di default: percorso repo e numero di revisione. Ho bisogno di arrivare alla cartella di ramo (o tronco) per eseguire il processo di compilazione solo se è stato eseguito un ramo specifico (ramo UAT).Come ottenere il nome del ramo in un hook post-commit in SVN?

+0

Non è il ramo una parte di 'percorso di repo'? – eckes

risposta

9

Subversion non considera queste cartelle speciali in alcun modo. Considerarli come succursali è solo una convenzione che segui.

Poiché un commit può, senza problemi, accedere a più cartelle contemporaneamente, è necessario utilizzare qualcosa come svnlook dirs-changed -r "$REV" "$REPOS" e verificare se una o più delle cartelle a cui si è interessati sono interessate dal commit . Ecco uno snippet dal nostro file post-commit:

if svnlook dirs-changed -r "$REV" "$REPOS" | grep -qEe '^trunk/'; then 
    some-command.pl "$REPOS" "$REV" more parameters 
fi 
Problemi correlati