Differences between revisions 17 and 18
Revision 17 as of 2009-05-20 09:17:26
Size: 3699
Comment: Fix wiki links.
Revision 18 as of 2009-08-06 10:06:37
Size: 7452
Editor: youshe
Comment: Updated to last version
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
## 2009-08-06 Frédéric Bouquet (youshe) <youshe.jaalon@gmail.com> : Mise à jour de la version Française
Line 4: Line 5:
= Tutorial - Examiner l'historique du dépôt = Ce document est une traduction du document original [[TutorialInstall]]
Line 6: Line 7:
Jusque là, nous avons suivi le [[FrenchTutorialClone]] pour cloner un dépôt; notre copie locale s'appelle my-hello. == Tutorial - Examiner l'historique du dépôt ==
Line 8: Line 9:
Regardons l'historique de ce dépôt. Pour cela, nous utilisons la commande log. Elle affiche le résumé de chaque événement qui s'est produit dans le dépôt, allant du premier au plus récent. ''(Cette page est la partie 3 sur 9 de la série [[FrenchTutorial]]. La partie précédente est [[FrenchTutorialClone]], la partie suivante est [[FrenchTutorialFirstChange]])''
Line 10: Line 11:
Note: si l'historique grandit et que nous ne désirons voir que les nouveaux changement, il peut être intéressant d'utiliser hg log | head [-<nombre de lignes>] A ce point, nous avons suivi [[FrenchTutorialClone]] pour cloner un dépôt. Notre copie locale est appelée {{{mon-hello}}}.

Regardons maintenant l'historique ce ce [[Repository|dépôt]]. Pour ce faire, nous utilisons la commande {{{log}}}. Ceci affiche un résumé de chaque évènement qui ont eu lieu dans le dépôt, en remontant dans le temps à partir du plus récent.
Line 13: Line 16:
$ cd my-hello
Line 26: Line 28:
Ces lignes de sortie nécessitent quelques informations.
Line 28: Line 29:
 * Chaque paragraphe décrit un ChangeSet particulier. Un ChangeSet est une modification de un ou plusieurs fichiers, groupés en une unité logique.
 * Dans le cas ci-dessus, nous pouvons voir que l'historique du dépôt consiste en deux [[ChangeSet]]s.
Ces quelques lignes de sortie ont besoin de quelques explications :

* Chaque paragraphe décrit un [[ChangeSet]] particulier. Un ChangeSet est une modification de un ou plusieurs fichiers, groupés en une unité logique.
  * Dans notre cas ci-dessus, nous pouvons voir que l'historique du dépôt consiste en deux [[ChangeSet|ChangeSets]].
Line 31: Line 34:
  * Le premier nombre avant les deux points est le numéro de révision; c'est une manière rapide d'identifier un ChangeSet. Il est valide uniquement dans ce dépôt.
   * La longue chaîne hexadécimale après les deux points est le ChangeSetID; il identifie de manière unique le ChangeSet, et est le même dans tous les dépôts qui contiennent ce ChangeSet. Si vous discutez avec quelqu'un d'un ChangeSet, utilisez le ChangeSetID, pas le numéro de révision.
 * {{{tag}}} est une étiquette, nom arbitraire symbolique pour un ChangeSet.
   * Vous pouvez assigner une ou plusieurs étiquettes à n'importe quel ChangeSet. Naturellement, certains [[ChangeSet]]s n'auront pas étiquette associée, donc la ligne tag ne sera pas toujours présente.
  * L'étiquette spéciale {{{tip}}} identifie toujours le "Tip", qui est le plus récent ChangeSet dans le dépôt. Si vous créez un autre ChangeSet (et nous le ferons bientôt), il deviendra le Tip.
  * Le premier nombre avant les deux points est le [[RevisionNumber|numéro de révision]]. Il s'agit d'une manière rapide d'identifier un [[ChangeSet]]. Il est valide uniquement dans ce dépôt.
  * La longue chaîne hexadécimale après les deux points est le [[ChangeSetID]]. Il identifie de manière unique le [[ChangeSet]], et est le même dans tous les dépôts qui contiennent ce [[ChangeSet]]. Si vous discutez avec quelqu'un d'un [[ChangeSet]], utilisez le [[ChangeSetID]], et non le numéro de révision.
 * {{{tag}}} est une [[Tag|étiquette]], nom arbitraire symbolique pour un [[ChangeSet]].
  * Vous pouvez assigner une ou plusieurs étiquettes à n'importe quel [[ChangeSet]]. Naturellement, peu de [[ChangeSet|ChangeSets]] auront une étiquette associée, donc la ligne tag ne sera pas toujours présente.
  * L'étiquette spéciale {{{tip}}} identifie toujours le [[Tip|tip]] qui est le plus récent ChangeSet dans le dépôt. Si vous créez un autre ChangeSet (et nous le ferons bientôt), l'étiquette {{{tip}}} sera retirée du plus récent changeset et sera ajouté au nouveau changeset.
Line 37: Line 40:
 * {{{date}}} définit la date à laquelle le ChangeSet a été créé. Ces dates sont données dans la zone horaire locale correspondant au fuseau horaire du créateur du ChangeSet.
 * {{{summary}}} donne la première ligne de description du ChangeSet. Elle a été entrée par le créateur du ChangeSet en question au moment ou il l'a créé, pour s'aider et aider les autres à comprendre le but du ChangeSet.
 * {{{date}}} définit la date à laquelle le [[ChangeSet]] a été créé. Ces dates sont données dans la zone horaire locale correspondant au fuseau horaire du créateur du ChangeSet.
 * {{{summary}}} donne la première ligne de description du [[ChangeSet]]. Elle a été entrée par le créateur du ChangeSet en question au moment ou il l'a créé, pour s'aider et aider les autres à comprendre le but du [[ChangeSet]].
 * {{{parent}}} définit le changeset [[Parent|parent]]. Dans certains cas, il en existe plus d'un, ce qui arrive lorsque vous [[Merge|fusionnez (merge)]] les changements depuis différents dépôts.
  * La plupart du temps il n'y a qu'un seul changeset parent, qui est le changeset juste plus vieux que celui ci. C'est le cas pour notre exemple juste au dessus.
Line 40: Line 45:
Nous pouvons avoir un historique plus détaillé en demandant une sortie verbeuse : Nous pouvons avoir un historique plus détaillé en demandant une sortie verbeuse à l'aide de l'option {{{-v}}}, ou l'option globale {{{--debug}}} pour absolument tout :
Line 44: Line 49:
changeset: 1:82e55d328c8ca4ee16520036c0aaace03a5beb65 changeset: 1:82e55d328c8c
Line 52: Line 57:
... (...)

$ hg log --debug
changeset: 1:82e55d328c8ca4ee16520036c0aaace03a5beb65
tag: tip
parent: 0:0a04b987be5ae354b710cefeba0e2d9de7ad41a9
parent: -1:0000000000000000000000000000000000000000
manifest: 1:0c7c1d435e6703e03ac6634a7c32da3a082d1600
user: mpm@selenic.com
date: Fri Aug 26 01:21:28 2005 -0700
files+: Makefile
extra: branch=default
description:
Create a makefile

(...)
Line 54: Line 74:
Line 55: Line 76:
 * {{{files}}} liste les fichiers modifiés dans ce changeset.
 * {{{description}}} contient la description complète et multiligne du ChangeSet plutôt que simplement la première ligne
  * Dans notre cas, les descriptions sont seulement longues d'une ligne, il n'y a donc pas beaucoup de différence.
Line 56: Line 80:
 * {{{revision}}} est un champ que vous pouvez ignorer.
 * {{{files}}} liste les fichiers du changeset.
 * {{{description}}} contient la description complète et multiligne du ChangeSet, au lieu de simplement la première ligne.
La sortie `--debug` ajoute les champs suivants à la sortie verbeuse (cf. aussi [[DebuggingFeatures|Options de debugage]]):
Line 60: Line 82:
Maintenant nous avons une idée plus claire de ce qui se passe, plongeons-nous dedans et faisons des modifications ! En avant, au [[FrenchTutorialFirstChange]]  * {{{changeset}}} donne maintenant le ChangeSetID non abrégé
 * deux champs {{{parent}}} indiquant le ChangeSetID de chaque parents de ce ChangeSet où {{{-1:0000000000000000000000000000000000000000}}} réfère à un parent inexistant.
 * {{{manifest}}} donne le [[Manifest|manifest]] ID pour ce ChangeSet.
 * {{{file+}}} liste le ou les fichiers ajoutés à ce ChangeSet.
 * {{{file-}}} liste le ou les fichiers retirés dans ce ChangeSet.

La commande {{{log}}} vient avec une option {{{-r}}} pour voir les [[ChangeSet|ChangeSets]] spécifiques

{{{
$ hg log -r1
changeset: 1:82e55d328c8c
tag: tip
user: mpm@selenic.com
date: Fri Aug 26 01:21:28 2005 -0700
summary: Create a makefile
}}}

<!> L'option {{{-r}}} supporte actuellement une syntaxe très flexible pour sélectionner un ensemble de [[ChangeSet|ChangeSets]]. Cependant, en raison du nombre limité de ChangeSets disponibles dans notre dépôt d'exemple, nous sommes dans l'impossibilité de donner une bonne démonstration. Référez vous SVP à la [[http://www.selenic.com/mercurial/hg.1.html#log|manpage]] pour plus d'information.

La commande {{{log}}} vient aussi avec une option {{{-p}}} pour montrer les patches associés aux [[ChangeSet|ChangeSets]]:

{{{
$ hg log -r1 -p
changeset: 1:82e55d328c8c
tag: tip
user: mpm@selenic.com
date: Fri Aug 26 01:21:28 2005 -0700
summary: Create a makefile

diff -r 0a04b987be5a -r 82e55d328c8c Makefile
--- /dev/null Fri Aug 26 01:20:50 2005 -0700
+++ b/Makefile Fri Aug 26 01:21:28 2005 -0700
@@ -0,0 +1,1 @@
+all: hello
}}}

Nous pouvons aussi utiliser la commande {{{tip}}} pour afficher des information sur le '''tip''', i.e. le dernier ChangeSet. La commande {{{tip}}} peut être considérée comme un raccourci de notation pour {{{log -r tip}}}.

{{{
$ hg tip
changeset: 1:82e55d328c8c
tag: tip
user: mpm@selenic.com
date: Fri Aug 26 01:21:28 2005 -0700
summary: Create a makefile

$ hg log -r tip
changeset: 1:82e55d328c8c
tag: tip
user: mpm@selenic.com
date: Fri Aug 26 01:21:28 2005 -0700
summary: Create a makefile
}}}

Maintenant que nous avons une idée plus claire de ce qui se passe, plongeons-nous dedans et faisons des modifications ! En avant, au [[FrenchTutorialFirstChange]]
Line 62: Line 139:
CategoryFrench CategoryTutorial CategoryFrench CategoryFrench

Ce document est une traduction du document original TutorialInstall

Tutorial - Examiner l'historique du dépôt

(Cette page est la partie 3 sur 9 de la série FrenchTutorial. La partie précédente est FrenchTutorialClone, la partie suivante est FrenchTutorialFirstChange)

A ce point, nous avons suivi FrenchTutorialClone pour cloner un dépôt. Notre copie locale est appelée mon-hello.

Regardons maintenant l'historique ce ce dépôt. Pour ce faire, nous utilisons la commande log. Ceci affiche un résumé de chaque évènement qui ont eu lieu dans le dépôt, en remontant dans le temps à partir du plus récent.

$ hg log
changeset:   1:82e55d328c8c
tag:         tip
user:        mpm@selenic.com
date:        Fri Aug 26 01:21:28 2005 -0700
summary:     Create a makefile

changeset:   0:0a04b987be5a
user:        mpm@selenic.com
date:        Fri Aug 26 01:20:50 2005 -0700
summary:     Create a standard "hello, world" program

Ces quelques lignes de sortie ont besoin de quelques explications :

  • Chaque paragraphe décrit un ChangeSet particulier. Un ChangeSet est une modification de un ou plusieurs fichiers, groupés en une unité logique.

    • Dans notre cas ci-dessus, nous pouvons voir que l'historique du dépôt consiste en deux ChangeSets.

  • changeset identifie un ChangeSet.

    • Le premier nombre avant les deux points est le numéro de révision. Il s'agit d'une manière rapide d'identifier un ChangeSet. Il est valide uniquement dans ce dépôt.

    • La longue chaîne hexadécimale après les deux points est le ChangeSetID. Il identifie de manière unique le ChangeSet, et est le même dans tous les dépôts qui contiennent ce ChangeSet. Si vous discutez avec quelqu'un d'un ChangeSet, utilisez le ChangeSetID, et non le numéro de révision.

  • tag est une étiquette, nom arbitraire symbolique pour un ChangeSet.

    • Vous pouvez assigner une ou plusieurs étiquettes à n'importe quel ChangeSet. Naturellement, peu de ChangeSets auront une étiquette associée, donc la ligne tag ne sera pas toujours présente.

    • L'étiquette spéciale tip identifie toujours le tip qui est le plus récent ChangeSet dans le dépôt. Si vous créez un autre ChangeSet (et nous le ferons bientôt), l'étiquette tip sera retirée du plus récent changeset et sera ajouté au nouveau changeset.

  • user identifie la personne qui a créé le ChangeSet. C'est une chaîne de forme libre, qui contient généralement une adresse e-mail, et parfois le nom de la personne également.

  • date définit la date à laquelle le ChangeSet a été créé. Ces dates sont données dans la zone horaire locale correspondant au fuseau horaire du créateur du ChangeSet.

  • summary donne la première ligne de description du ChangeSet. Elle a été entrée par le créateur du ChangeSet en question au moment ou il l'a créé, pour s'aider et aider les autres à comprendre le but du ChangeSet.

  • parent définit le changeset parent. Dans certains cas, il en existe plus d'un, ce qui arrive lorsque vous fusionnez (merge) les changements depuis différents dépôts.

    • La plupart du temps il n'y a qu'un seul changeset parent, qui est le changeset juste plus vieux que celui ci. C'est le cas pour notre exemple juste au dessus.

Nous pouvons avoir un historique plus détaillé en demandant une sortie verbeuse à l'aide de l'option -v, ou l'option globale --debug pour absolument tout :

$ hg log -v
changeset:   1:82e55d328c8c
tag:         tip
user:        mpm@selenic.com
date:        Fri Aug 26 01:21:28 2005 -0700
files:       Makefile
description:
Create a makefile

(...)

$ hg log --debug
changeset:   1:82e55d328c8ca4ee16520036c0aaace03a5beb65
tag:         tip
parent:      0:0a04b987be5ae354b710cefeba0e2d9de7ad41a9
parent:      -1:0000000000000000000000000000000000000000
manifest:    1:0c7c1d435e6703e03ac6634a7c32da3a082d1600
user:        mpm@selenic.com
date:        Fri Aug 26 01:21:28 2005 -0700
files+:      Makefile
extra:       branch=default
description:
Create a makefile

(...)

La sortie verbeuse contient quelques champs de plus que la vue par défaut.

  • files liste les fichiers modifiés dans ce changeset.

  • description contient la description complète et multiligne du ChangeSet plutôt que simplement la première ligne

    • Dans notre cas, les descriptions sont seulement longues d'une ligne, il n'y a donc pas beaucoup de différence.

La sortie --debug ajoute les champs suivants à la sortie verbeuse (cf. aussi Options de debugage):

  • changeset donne maintenant le ChangeSetID non abrégé

  • deux champs parent indiquant le ChangeSetID de chaque parents de ce ChangeSet-1:0000000000000000000000000000000000000000 réfère à un parent inexistant.

  • manifest donne le manifest ID pour ce ChangeSet.

  • file+ liste le ou les fichiers ajoutés à ce ChangeSet.

  • file- liste le ou les fichiers retirés dans ce ChangeSet.

La commande log vient avec une option -r pour voir les ChangeSets spécifiques

$ hg log -r1
changeset:   1:82e55d328c8c
tag:         tip
user:        mpm@selenic.com
date:        Fri Aug 26 01:21:28 2005 -0700
summary:     Create a makefile

<!> L'option -r supporte actuellement une syntaxe très flexible pour sélectionner un ensemble de ChangeSets. Cependant, en raison du nombre limité de ChangeSets disponibles dans notre dépôt d'exemple, nous sommes dans l'impossibilité de donner une bonne démonstration. Référez vous SVP à la manpage pour plus d'information.

La commande log vient aussi avec une option -p pour montrer les patches associés aux ChangeSets:

$ hg log -r1 -p
changeset:   1:82e55d328c8c
tag:         tip
user:        mpm@selenic.com
date:        Fri Aug 26 01:21:28 2005 -0700
summary:     Create a makefile

diff -r 0a04b987be5a -r 82e55d328c8c Makefile
--- /dev/null   Fri Aug 26 01:20:50 2005 -0700
+++ b/Makefile  Fri Aug 26 01:21:28 2005 -0700
@@ -0,0 +1,1 @@
+all: hello

Nous pouvons aussi utiliser la commande tip pour afficher des information sur le tip, i.e. le dernier ChangeSet. La commande tip peut être considérée comme un raccourci de notation pour log -r tip.

$ hg tip
changeset:   1:82e55d328c8c
tag:         tip
user:        mpm@selenic.com
date:        Fri Aug 26 01:21:28 2005 -0700
summary:     Create a makefile

$ hg log -r tip
changeset:   1:82e55d328c8c
tag:         tip
user:        mpm@selenic.com
date:        Fri Aug 26 01:21:28 2005 -0700
summary:     Create a makefile

Maintenant que nous avons une idée plus claire de ce qui se passe, plongeons-nous dedans et faisons des modifications ! En avant, au FrenchTutorialFirstChange


CategoryTutorial CategoryFrench CategoryFrench

FrenchTutorialHistory (last edited 2012-11-06 23:57:11 by abuehl)