2008-09-28 6 views
6

Vous remarquez en bas à droite de cette page le N ° de révision SVN? Je suppose que c'est dynamique.Un moyen facile d'intégrer le numéro de révision svn dans la page en PHP?

J'aimerais ajouter cela à certains de mes sites, juste comme un commentaire dans la source pour m'assurer que les poussées de code sont en cours.

REMARQUE: Vous pouvez également supposer que le répertoire de travail du site en question est une vérification svn du référentiel en question.

Editer: Je cherche le numéro de révision global, pas le numéro de révision du fichier que je regarde.

+0

double: http://stackoverflow.com/questions/111436/how-can-i-get-the-svn-revision-number-in-php – Thomaschaaf

Répondre

9

Vous pouvez utiliser l'utilitaire CLI svnversion pour obtenir un aspect plus spécifique à la révision, y compris le plus grand nombre. Vous pouvez ensuite utiliser des expressions régulières pour analyser ceci.

Subversion n'a pas de concept de révision globale; il faudrait plutôt parcourir de façon récursive la copie de travail pour trouver le numéro de révision le plus élevé. svnversion fait cela pour vous.

5

La méthode de substitution par mot-clé n'est pas fiable car elle fournira la révision du fichier plutôt que l'ensemble de la base de code que vous déployez, ce que je suppose être ce que vous recherchez. En général, j'utilise ANT pour déployer à partir de subversion, et dans le script de construction, j'utilise la tâche de remplacement pour substituer un jeton de révision dans un modèle de layout ou un fichier d'en-tête commun avec le numéro de révision du code que je déploie - voir ci-dessous. Bien que si quelqu'un a une meilleure méthode, j'aimerais l'entendre!

<svn username="${svn.username}" password="${svn.password}" javaHL="${svn.javahl}">  
    <status path="${dir.build}" revisionProperty="svn.status.revision" /> 
</svn> 

<replace dir="${dir.build}" token="%revision%" value="${svn.status.revision}"> 
    <include name="**/*.php" /> 
</replace> 
Questions connexes