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

StackOverflow https://stackoverflow.com/questions/139759

  •  02-07-2019
  •  | 
  •  

Question

Est-il possible de répertorier tous les fichiers ayant changé entre deux balises dans CVS?

Chaque fois que nous publions 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.

Était-ce utile?

La solution

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 cvs diff 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. Pour autant que je sache, les outils d'interface graphique cvs les plus courants (wincvs et tortoise) le sont ne pas fournir quelque chose comme ceci hors de la boîte.

J'espère que cela vous aidera ;)

Autres conseils

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 sandbox; -s vous récapitule les modifications.

Pour obtenir la liste des fichiers entre deux dates à l'aide de 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 le drapeau -D: http: / /docs.freebsd.org/info/cvs/cvs.info.Common_options.html

Pour obtenir une liste des fichiers modifiés d’une version à l’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, supprimez 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 par les révisions que vous comparez.

cvs log -d ">=DATE" -N -S -R > cvs.log

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

Pour obtenir simplement une liste de fichiers, ceci fonctionne:

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

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 beaucoup d'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 effectué des comparaisons à l'aide de dates avec le même outil.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top