46 votes

comment afficher la version précédente d'un fichier dans Mercurial

J'utilise mercurial pour le contrôle de version de quelques fichiers d'un répertoire. Supposons que j'ai 10 commits (10 changesets ou révisions). Je veux simplement voir à quoi ressemble un fichier, par exemple thisFile.py, dans sa 7e révision. Je ne veux pas revenir à cette ancienne version. Je ne veux pas apporter de modifications ni corriger aucun bogue dans cette version précédente. Je veux simplement le voir, sans que cela affecte la dernière version du fichier ou l'historique mercurial. Y a-t-il un moyen simple de le faire?

67voto

Joel Spolsky Points 22686

Utilisez la commande hg cat avec l'argument -r (révision).

 hg cat path_to/myfile.cpp -r 46
 

où 46 est le numéro de la révision (utilisez hg log pour voir l'historique des révisions)

10voto

Thilo Points 108673
hg cat [OPTION]... FILE...

Print the specified files as they were at the given revision. 
If no revision is given, the parent of the working directory is used, 
or tip if no revision is checked out.

Output may be to a file, in which case the name of the file is given 
using a format string. The formatting rules are the same as for the 
export command, with the following additions:
%s: basename of file being printed
%d: dirname of file being printed, or '.' if in repository root
%p: root-relative path name of file being printed

Returns 0 on success.

options:
-o, --output    print output to file with formatted name
-r, --rev   print the given revision
--decode    apply any matching decode filter
-I, --include   include names matching the given patterns
-X, --exclude   exclude names matching the given patterns

6voto

user2173353 Points 369

Pour extraire une révision spécifique d'un fichier spécifique, vous pouvez le faire sous Windows:

 hg cat "<FileToBeExtractedPath>" -r 9 > "<ExtractionPath>"
 

Ici, 9 est le numéro de révision.

Ou même mieux:

 hg cat "<FileToBeExtractedPath>" -r 9 -o "<ExtractionPath>"
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X