Skip to content
Tags

,

Sélectionner des logs Subversion ou Mercurial selon une période de temps

3 juin 2012

Supposons que l’on veuille retrouver les messages de commit selon une date de début et une date de fin. Selon le gestionnaire de version utilisé, les commande diffèrent légèrement.

Dans les exemple suivants, on souhaite récupérer la liste des commit réalisés entre le 20 et le 28 Mai 2012 inclus.

Subversion (SVN)

Voici la syntaxe à utiliser :

  • Version longue :
    svn --revision {2012-05-20}:{2012-05-28} log
  • Version courte :
    svn -r {2012-05-20}:{2012-05-28} log

Le résultat que l’on peut obtenir sur la sortie standard :

r3299 | bob | 2012-05-20 02:14:59 +0200 (dim. 20 mai 2012) | 1 ligne

possibilité de faire la somme de deux entiers
————————————————————————
r3300 | alice | 2012-05-21 12:24:22 +0200 (lun. 21 mai 2012) | 1 ligne

FIX: somme avec une retenue
————————————————————————
r3301 | bob | 2012-05-21 12:54:27 +0200 (lun. 21 mai 2012) | 1 ligne

somme avec des nombres à virgules deviennent possibles
————————————————————————
r3302 | bob | 2012-05-21 18:06:13 +0200 (lun. 21 mai 2012) | 1 ligne

refacto pour recette
————————————————————————
r3303 | bob | 2012-05-22 10:11:53 +0200 (mar. 22 mai 2012) | 1 ligne

le client veut des soustractions plutôt que des additions
————————————————————————
r3304 | alice | 2012-05-22 15:52:48 +0200 (mar. 22 mai 2012) | 1 ligne

FIX: problème de retenue lors de la soustraction
————————————————————————
r3305 | alice | 2012-05-23 17:16:10 +0200 (mer. 23 mai 2012) | 1 ligne

retouches graphiques selon préférences du client (coins arrondis et texte en #DDDDDD sur fond #EEEEEE)
————————————————————————

Si les deux dates sont inversées, l’ordre des commits est affiché dans l’autre sens.

Mercurial

Voici les commandes équivalentes avec Mercurial :

  • Version longue :
    hg log --date "2012-05-20 to 2012-05-28"
  • Version courte :
    hg log -d "2012-05-20 to 2012-05-28"

Le résultat sur la sortie standard est différent mais affiche globalement les mêmes informations :

changeset: 863:9282710bfded
parent: 856:36ecccd6d084
user: « Alice » <alice@example.com>
date: Mon May 28 22:07:05 2012 +0200
summary: Cloud de calculs hautes performances dispo par webservices

changeset: 862:48757838dcc3
user: « Bob » <bob@example.com>
date: Fri May 25 18:02:47 2012 +0200
summary: FIX: contournement calcul avec oneliner Perl

changeset: 861:556dcf3215e0
parent: 860:64a388d648ea
parent: 859:6a73cea460b3
user: « Alice » <alice@example.com>
date: Fri May 25 17:10:05 2012 +0200
summary: import libsoustraction

Contrairement à Subversion, la liste s’affiche du commit le plus récent au plus vieux. Avec cette syntaxe, il n’est pas possible d’afficher les données dans le sens chronologique (pas de résultat). Il est aussi possible d’ajouter les heures et minutes.
D’autres formats de date sont possibles, mais moins pratiques à mon avis (cf. man hg, section DATE FORMATS).

Versions utilisées

Client :
svn : version 1.6.17 (r1128011)
hg : version 2.2.1

Serveur :
svn : version 1.6.6 (r40053)
hg : version 1.4.3

From → Autre

Laisser un commentaire

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s

%d blogueurs aiment cette page :