web-dev-qa-db-fra.com

CVS: liste tous les fichiers modifiés entre les balises (ou les dates)

Existe-t-il un moyen de répertorier tous les fichiers qui ont changé entre deux balises dans CVS?

Chaque fois que nous faisons une version, nous appliquons une balise à tous les fichiers de cette version. Je veux trouver tous les fichiers qui ont changé entre les versions.

Cela fonctionnerait également si je pouvais trouver tous les fichiers qui avaient changé entre deux dates.

56
roomaroo

Je suppose que cette commande aiderait:

cvs diff -N -c -r RELEASE_1_0 -r RELEASE_1_1 > diffs

RELEASE_1_0 et RELEASE_1_1 sont les noms de vos tags.

Vous pouvez trouver un peu plus d'informations sur la commande diff cvs ici

de plus, il devrait être assez simple de créer un script pour rendre le rapport plus adapté à vos besoins, par exemple: nombre de fichiers modifiés, créés supprimés, etc. comme ça hors de la boîte.

J'espère que ça aide ;)

34
Decio Lira

Je préfère utiliser rdiff et -s option

cvs rdiff -s  -r RELEASE_1_0 -r RELEASE_1_1 module > diffs

rdiff ne nécessite pas de bac à sable; -s vous donne un résumé des modifications.

24
Sally

Pour obtenir la liste des fichiers entre deux dates en utilisant CVS:

cvs diff -N -c -D YYYY-MM-DD -D YYYY-MM-DD | grep "Index:" > diff.out

Plus d'informations sur les dates acceptées pour l'indicateur -D: http://docs.freebsd.org/info/cvs/cvs.info.Common_options.html

17
Michael

Pour obtenir une liste des fichiers qui ont changé entre une version et une autre à l'aide des commandes cvs standard:

cvs -q log -NSR -rV-1-0-69::V-1-0-70 2>/dev/null >log.txt

Ou bien, pour obtenir une liste des commentaires de validation, déposez simplement le -R:

cvs -q log -NS -rV-1-0-69::V-1-0-70 2>/dev/null >log.txt

Où vous remplacez V-1-0-69 et V-1-0-70 avec les révisions que vous comparez.

11
Taufiq
cvs log -d ">=DATE" -N -S -R > cvs.log
8
tkrille

La méthode de DLira donne beaucoup de détails, y compris tous les changements.

Pour obtenir simplement une liste de fichiers, cela fonctionne:

cvs diff -N -c -r RELEASE_1_0 -r RELEASE_1_1 | grep "Index:" > diffs
4
roomaroo

Le meilleur outil que j'ai trouvé pour cela est un script Perl appelé cvs2cl.pl . Cela peut générer une liste de modifications dans plusieurs formats différents. Il a de nombreuses options différentes, mais j'ai utilisé les options tag-to-tag comme ceci:

cvs2cl.pl --delta dev_release_1_2_3:dev_release_1_6_8

ou

cvs2cl.pl --delta dev_release_1_2_3:HEAD

J'ai également fait des comparaisons en utilisant des dates avec le même outil.

1
Alex B