Modifier un log de commit (Subversion)
Par km, mercredi 22 octobre 2008 à 17:19 :: informatique ::#53
Avec svn, il arrive parfois que certains oublient de commenter leurs commits.
Problématique
Lorsqu’on travaille avec un outil de suivi de développement tel que SVN [1] il est important de toujours commenter ses commits.
Malheureusement, il arriver parfois que l’étourdi de service oubli de suivre les bonnes règles du développeur. Dans ce cas il faut alors mettre à jour un commit à posteriori.
Hooks
Subversion de son coté permet de retravailler un commit grâce aux hooks [2].
Les Hooks sont des scripts qui permettent d’intervenir à différentes moment de la vie d’un commit. On peut ainsi retravailler un commit ou bien brancher un robot qui enverra des notifications, ...
Activation du hook
Linux
Si on utilise Linux, il faut renommer le fichier pre-revprop-change.tpml en pre-revprop-change.sh ou en pre-revprop-change selon les distributions.
Comme c’est un script il doit être exécutable par l’utilisateur svn.
Windows
Si on utilise window, il faut créer le fichier pre-revprop-change.bat avec le code suivant :
Le code est de Nathan Creek
Vous pouvez trouver aussi un autre version sur la liste : http://svn.haxx.se/users/archive-20..., toutefois celui ne semble pas marcher sur toutes les version windows
Utilisation
Depuis un poste client, la commande à utiliser est
svn propset svn:log <Message> -r<revision> --revprop <serveur>
-
: Nouveau message de commit -
: révision dont le log est à mettre à jour -
: url complète du serveur SVN
Par exemple :
Commentaires
Merci pour cette info que je cherchais.
Je suis sur une debian 5. Dans mon cas j’ai du renommer pre-revprop-change.tmpl en pro-revprop-change tout court
Mon dépôt subversion est relié à un Trac. Donc à la suite d’une modification du log il faut resynchroniser la base de trac :
A titre d’info complémentaire :
root (ou www-data) : trac-admin /path/to/trac/project resync
Bonjour,
je confirme, sous Debian/Ubuntu (les autres linux sans doute pareil), il ne FAUT PAS AJOUTER D’EXTENSION au fichier ,sinon ça ne marche pas (2 heures que je me bas avant de lire de commentaire ci-dessus !
Bonjour
Merci pour les retours, la documentation a été mise à jour en conséquence.