[svnbook] r3704 committed - Translation to French of Appendix B : done.

svnbook at googlecode.com svnbook at googlecode.com
Mon Mar 8 14:10:13 CST 2010


Revision: 3704
Author: christophe.nanteuil
Date: Mon Mar  8 12:09:20 2010
Log: Translation to French of Appendix B : done.

http://code.google.com/p/svnbook/source/detail?r=3704

Modified:
  /trunk/src/fr/book/appb-svn-for-cvs-users.xml

=======================================
--- /trunk/src/fr/book/appb-svn-for-cvs-users.xml	Wed Sep  3 22:38:31 2008
+++ /trunk/src/fr/book/appb-svn-for-cvs-users.xml	Mon Mar  8 12:09:20 2010
@@ -1,64 +1,71 @@
  <appendix id="svn.forcvs">
-  <title>Subversion for CVS Users</title>
-
-  <para>This appendix is a guide for CVS users new to Subversion.
-    It's essentially a list of differences between the two systems
-    as <quote>viewed from 10,000 feet.</quote>  For each section, we
-    provide references to relevant chapters when
-    possible.</para>
-
-  <para>Although the goal of Subversion is to take over the current
-    and future CVS user base, some new features and design changes
-    were required to fix certain <quote>broken</quote> behaviors
-    that CVS had.  This means that, as a CVS user, you may need to
-    break habits—ones that you forgot were odd to begin
-    with.</para>
+  <title>Guide Subversion à l'usage des utilisateurs de CVS</title>
+
+  <para>Cet appendice est un guide pour les utilisateurs de CVS qui
+    découvrent Subversion. Il est essentiellement constitué d'une liste
+    de différences, <quote>au doigt mouillé</quote>, entre les deux
+    systèmes. Pour chaque section, nous fournissons autant que possible
+    les références des chapitres pertinents.</para>
+
+  <para>Bien que le but de Subversion soit de s'emparer de la communauté
+    des utilisateurs actuels et futurs de CVS, de nouvelles
+    fonctionnalités et des changements conceptuels étaient nécessaires
+    pour corriger certains comportements <quote>malencontreux</quote>
+    de CVS. Cela signifie que, en tant qu'utilisateur de CVS, vous
+    devrez vous défaire de certaines habitudes — celles dont vous
+    avez oublié combien elles vous semblaient bizarres au début.</para>


    <!-- =================================================================  
-->
    <!-- =================================================================  
-->
    <!-- =================================================================  
-->
    <sect1 id="svn.forcvs.revnums">
-    <title>Revision Numbers Are Different Now</title>
-
-    <para>In CVS, revision numbers are per file.  This is because CVS
-      stores its data in RCS files; each file has a corresponding RCS
-      file in the repository, and the repository is roughly laid out
-      according to the structure of your project tree.</para>
-
-    <para>In Subversion, the repository looks like a single
-      filesystem.  Each commit results in an entirely new filesystem
-      tree; in essence, the repository is an array of trees.  Each of
-      these trees is labeled with a single revision number.  When
-      someone talks about <quote>revision 54</quote>, he's talking
-      about a particular tree (and indirectly, the way the filesystem
-      looked after the 54th commit).</para>
-
-    <para>Technically, it's not valid to talk about <quote>revision 5
-      of <filename>foo.c</filename>.</quote>  Instead, one would say
-      <quote><filename>foo.c</filename> as it appears in revision
-      5.</quote>  Also, be careful when making assumptions about the
-      evolution of a file.  In CVS, revisions 5 and 6 of
-      <filename>foo.c</filename> are always different.  In Subversion,
-      it's most likely that <filename>foo.c</filename> did
-      <emphasis>not</emphasis> change between revisions 5 and
+    <title>Les numéros de révisions sont différents</title>
+
+    <para>Dans CVS, les numéros de révisions sont associés à un fichier.
+      Ceci est du au fait que CVS stocke ses données dans des fichiers
+      RCS ; à chaque fichier est associé un fichier RCS dans le
+      dépôt et la structure du dépôt correspond plus ou moins à
+      l'arborescence de votre projet.</para>
+
+    <para>Dans Subversion, le dépôt ressemble à un système de fichiers
+      unique. Chaque propagation conduit à un système de fichiers
+      entièrement nouveau ; au fond, le dépôt est un tableau
+      d'arborescences de fichiers. Chacune de ces arborescences est
+      étiquetée avec un numéro de révision. Quand quelqu'un parle de la
+      <quote>révision 54</quote>, il parle d'une arborescence
+      particulière (et indirectement, de l'état du système de fichiers
+      après la cinquante-quatrième propagation).</para>
+
+    <para>Techniquement, il n'est pas correct de parler de
+      <quote>la révision 5 du fichier  
<filename>machin.c</filename></quote>.
+      À la place, on devrait dire <quote><filename>machin.c</filename>
+      tel qu'il était en révision 5</quote>. Soyez également prudent
+      quand vous faites des suppositions sur les évolutions d'un
+      fichier. Dans CVS, les révisions 5 et 6 de
+      <filename>machin.c</filename> sont toujours différentes. Dans
+      Subversion, le plus probable est que <filename>machin.c</filename>
+      <emphasis>n'a pas changé</emphasis> entre les révisions 5 et
        6.</para>

-    <para>Similarly, in CVS, a tag or branch is an annotation on the
-      file or on the version information for that individual file,
-      whereas in Subversion, a tag or branch is a copy of an entire
-      tree (by convention, into the <filename>/branches</filename>
-      or <filename>/tags</filename> directories that appear at the top
-      level of the repository, beside <filename>/trunk</filename>). In
-      the repository as a whole, many versions of each file may be
-      visible: the latest version on each branch, every tagged
-      version, and of course the latest version on the trunk
-      itself. So, to refine the terms even further, one would often
-      say <quote><filename>foo.c</filename> as it appears in
-      <filename>/branches/REL1</filename> in revision
+    <para>De la même manière, dans CVS, une étiquette et une branche
+      sont des annotations sur un fichier ou sur l'information de
+      version de ce fichier. En revanche, dans Subversion, une branche
+      ou une étiquette sont des copies complètes d'une arborescence
+      (situées respectivement par convention dans les répertoires
+      <filename>/branches</filename> et <filename>/tags</filename> qui
+      se trouvent à la racine de l'arborescence du dépôt, à côté de
+      <filename>/trunk</filename>). Dans l'ensemble du dépôt, plusieurs
+      versions de chaque fichier peuvent être visibles : la
+      dernière version à l'intérieur de chaque branche, la version au
+      sein de chaque étiquette et, bien sûr, la dernière version dans le
+      tronc lui-même (sous <filename>/trunk</filename>). Ainsi, pour
+      être vraiment précis, il convient de dire
+      <quote><filename>machin.c</filename> tel qu'il était dans
+      <filename>/branches/IDEE1</filename> à la révision
        5.</quote></para>

-    <para>For more details on this topic, see <xref
+    <para>Pour plus de détails sur ce sujet, consultez <xref
        linkend="svn.basic.in-action.revs" />.</para>

    </sect1>
@@ -67,72 +74,84 @@
    <!-- =================================================================  
-->
    <!-- =================================================================  
-->
    <sect1 id="svn.forcvs.directories">
-    <title>Directory Versions</title>
-
-    <para>Subversion tracks tree structures, not just file contents.
-      It's one of the biggest reasons Subversion was written to
-      replace CVS.</para>
-
-    <para>Here's what this means to you, as a former CVS user:</para>
+    <title>Suivi de versions des répertoires</title>
+
+    <para>Subversion assure le suivi de l'arborescence entière, pas
+      seulement des fichiers. C'est une des raisons majeures pour
+      lesquelles Subversion a été créé, dans le but de se substituer
+      à CVS.</para>
+
+    <para>Voilà ce que cela implique, du point de vue d'un ancien
+      utilisateur de CVS :</para>

      <itemizedlist>
        <listitem>
-        <para>The <command>svn add</command> and <command>svn
-          delete</command> commands work on directories now, just as
-          they work on files.  So do <command>svn copy</command> and
-          <command>svn move</command>.  However, these commands do
-          <emphasis>not</emphasis> cause any kind of immediate change
-          in the repository.  Instead, the working items are simply
-          <quote>scheduled</quote> for addition or deletion.  No
-          repository changes happen until you run <userinput>svn
-          commit</userinput>.</para>
+        <para>Les commandes <command>svn add</command> et <command>svn
+          delete</command> fonctionnent désormais aussi sur les
+          répertoires, de la même manière que sur les fichiers. Idem
+          pour <command>svn copy</command> et
+          <command>svn move</command>. Cependant, ces commandes n'ont
+          pas d'effet immédiat sur le dépôt ; en effet, elles ne
+          font que <emphasis>planifier</emphasis> l'ajout ou la
+          suppression des éléments concernés. Aucun changement n'a lieu
+          dans le dépôt tant que vous n'avez pas effectué de propagation
+          (commande <userinput>svn commit</userinput>).</para>
        </listitem>
        <listitem>
-        <para>Directories aren't dumb containers anymore; they have
-          revision numbers like files.  (Or more properly, it's
-          correct to talk about <quote>directory
-          <filename>foo/</filename> in revision 5.</quote>)</para>
+        <para>Les répertoires ne sont plus de simples conteneurs ;
+          ils possèdent un numéro de révision tout comme les fichiers
+          (ou pour être plus précis, il faut parler du <quote>répertoire
+          <filename>machin/</filename> tel qu'il était à la révision
+          5</quote>).</para>
        </listitem>
      </itemizedlist>

-    <para>Let's talk more about that last point.  Directory versioning
-      is a hard problem; because we want to allow mixed-revision
-      working copies, there are some limitations on how far we can
-      abuse this model.</para>
-
-    <para>From a theoretical point of view, we define <quote>revision
-      5 of directory <filename>foo</filename></quote> to mean a
-      specific collection of directory entries and properties.  Now
-      suppose we start adding and removing files from
-      <filename>foo</filename>, and then commit.  It would be a lie
-      to say that we still have revision 5 of
-      <filename>foo</filename>.  However, if we bumped
-      <filename>foo</filename>'s revision number after the commit,
-      that would be a lie too; there may be other changes to
-      <filename>foo</filename> we haven't yet received, because we
-      haven't updated yet.</para>
-
-    <para>Subversion deals with this problem by quietly tracking
-      committed adds and deletes in the <filename>.svn</filename>
-      area.  When you eventually run <userinput>svn update</userinput>,
-      all accounts are settled with the repository, and the
-      directory's new revision number is set correctly.
-      <emphasis>Therefore, only after an update is it truly safe to
-      say that you have a <quote>perfect</quote> revision of a
-      directory.</emphasis> Most of the time, your working copy will
-      contain <quote>imperfect</quote> directory revisions.</para>
-
-    <para>Similarly, a problem arises if you attempt to commit
-      property changes on a directory.  Normally, the commit would
-      bump the working directory's local revision number.  But again,
-      that would be a lie, as there may be adds or deletes that
-      the directory doesn't yet have, because no update has happened.
-      <emphasis>Therefore, you are not allowed to commit
-      property changes on a directory unless the directory is
-      up to date.</emphasis></para>
-
-    <para>For more discussion about the limitations of directory
-      versioning, see <xref  
linkend="svn.basic.in-action.mixedrevs"/>.</para>
+    <para>Approfondissons ce dernier point. Le suivi en versions d'un
+      répertoire est un problème difficile ; comme nous voulons
+      autoriser des copies de travail à cheval sur plusieurs révisions,
+      des limitations apparaissent quand on essaie de pousser le modèle
+      trop loin.</para>
+
+    <para>D'un point de vue théorique, nous définissons <quote>la
+      révision 5 du répertoire <filename>machin</filename></quote> comme
+      un ensemble d'entrées et de propriétés du répertoire. Maintenant,
+      supposons que nous ajoutons et supprimons des fichiers de
+      <filename>machin</filename>, puis que nous propageons ces
+      modifications. Dire que nous avons toujours la révision 5 de
+      <filename>machin</filename> est un mensonge. Cependant, si nous
+      changeons le numéro de révision de
+      <filename>machin</filename> après la propagation, c'est aussi un
+      mensonge ; il peut y avoir d'autres changements sur
+      <filename>machin</filename> que nous n'avons pas encore reçus
+      parce que nous n'avons pas encore effectué de mise à jour
+      (commande <command>svn update</command>).</para>
+
+    <para>Subversion traite ce problème en conservant discrètement, dans
+      la zone <filename>.svn</filename>, le détail des ajouts et des
+      suppressions propagés. Par la suite, quand vous lancez
+      <userinput>svn update</userinput>, ces informations sont prises en
+      compte et combinées avec celles du dépôt, et le nouveau numéro de
+      révision du répertoire est alors positionné correctement. Ainsi,
+      <emphasis> c'est seulement après une mise à jour que vous pouvez
+      affirmer, sans risque de vous tromper, que vous disposez d'une
+      révision <quote>parfaite</quote> d'un répertoire.</emphasis>
+      La plupart du temps, votre copie de travail contient des
+      répertoires <quote>imparfaitement</quote> synchronisés.</para>
+
+    <para>De la même manière, un problème survient si vous essayez de
+      propager des modifications de propriétés sur un répertoire.
+      Normalement, la propagation devrait ajuster le numéro de révision
+      du répertoire de la copie de travail locale. Mais là encore, ce
+      serait un mensonge puisqu'il peut y avoir des ajouts et des
+      suppressions que le répertoire n'a pas encore reçu en raison de la
+      mise à jour qui n'a pas encore eu lieu.
+      <emphasis>En conséquence, il n'est pas permis de propager des
+      changements sur les propriétés d'un répertoire sans que ce
+      répertoire ne soit préalablement mis à jour.</emphasis></para>
+
+    <para>Pour plus d'informations sur les limitations du suivi en
+      versions des répertoires, reportez-vous à <xref
+      linkend="svn.basic.in-action.mixedrevs"/>.</para>

    </sect1>

@@ -141,58 +160,60 @@
    <!-- =================================================================  
-->
    <!-- =================================================================  
-->
    <sect1 id="svn.forcvs.disconnected">
-    <title>More Disconnected Operations</title>
-
-    <para>In recent years, disk space has become outrageously cheap
-      and abundant, but network bandwidth has not.  Therefore, the
-      Subversion working copy has been optimized around the scarcer
-      resource.</para>
-
-    <para>The <filename>.svn</filename> administrative directory
-      serves the same purpose as the <filename>CVS</filename>
-      directory, except that it also stores read-only,
-      <quote>pristine</quote> copies of your files.  This allows you
-      to do many things offline:</para>
+    <title>Davantage d'opérations en mode déconnecté</title>
+
+    <para>Ces dernières années, l'espace de stockage sur disques est
+      devenu outrageusement bon marché et abondant, alors que ce n'est
+      pas le cas pour la bande passante disponible sur le réseau. En
+      conséquence, les copies de travail Subversion ont été optimisées
+      pour économiser la ressource la plus rare.</para>
+
+    <para>Le répertoire administratif <filename>.svn</filename> a le
+      même objectif que le répertoire <filename>CVS</filename>, à la
+      différence près qu'il stocke également des copies
+      <quote>originales</quote> en lecture seule de vos fichiers. Ceci
+      permet beaucoup d'opérations sans connexion réseau :</para>

      <variablelist>

        <varlistentry>
          <term><command>svn status</command></term>
          <listitem>
-          <para>Shows you any local changes you've made (see <xref
-            linkend="svn.tour.cycle.examine.status"/>)</para>
+          <para>liste les modifications locales que vous avez apportées  
(voir <xref
+            linkend="svn.tour.cycle.examine.status"/>) ;</para>
          </listitem>
        </varlistentry>

        <varlistentry>
          <term><command>svn diff</command></term>
          <listitem>
-          <para>Shows you the details of your changes (see <xref
-            linkend="svn.tour.cycle.examine.diff"/>)</para>
+          <para>donne le détail de vos modifications (voir <xref
+            linkend="svn.tour.cycle.examine.diff"/>) ;</para>
          </listitem>
        </varlistentry>

        <varlistentry>
          <term><command>svn revert</command></term>
          <listitem>
-          <para>Removes your local changes (see <xref
-            linkend="svn.tour.cycle.revert"/>)</para>
+          <para>supprime vos modifications locales (voir <xref
+            linkend="svn.tour.cycle.revert"/>).</para>
          </listitem>
        </varlistentry>

      </variablelist>

-    <para>Also, the cached pristine files allow the Subversion client
-      to send differences when committing, which CVS cannot do.</para>
-
-    <para>The last subcommand in the list—<command>svn
-      revert</command>—is new.  It will not only remove local
-      changes, but also unschedule operations such as adds and
-      deletes.  Although deleting the file and then running <userinput>svn
-      update</userinput> will still work, doing so distorts the true
-      purpose of updating.  And, while we're on this subject…
-
-    </para>
+    <para>Par ailleurs, les fichiers originaux en cache permettent au
+      client Subversion de n'envoyer que les différences au moment de la
+      propagation, ce que CVS ne peut pas faire.</para>
+
+    <para>La dernière sous-commande de la liste (<command>svn
+      revert</command>) est nouvelle. Elle supprime non seulement les
+      modifications locales mais aussi annule les opérations planifiées
+      telles que les ajouts et les suppressions. Bien que supprimer le
+      fichier puis lancer <userinput>svn
+      update</userinput> fonctionne toujours, cette méthode détourne la
+      mise à jour de sa vocation. Et puis, tant que nous y
+      sommes…</para>

    </sect1>

@@ -200,96 +221,101 @@
    <!-- =================================================================  
-->
    <!-- =================================================================  
-->
    <sect1 id="svn.forcvs.status-vs-update">
-    <title>Distinction Between Status and Update</title>
-
-    <para>Subversion attempts to erase a lot of the confusion
-      between the <command>cvs status</command> and
-      <command>cvs update</command> commands.</para>
-
-    <para>The <command>cvs status</command> command has two purposes:
-      first, to show the user any local modifications in the working
-      copy, and second, to show the user which files are out of date.
-      Unfortunately, because of CVS's hard-to-read status output, many
-      CVS users don't take advantage of this command at all.  Instead,
-      they've developed a habit of running <userinput>cvs
-      update</userinput> or <userinput>cvs -n update</userinput> to quickly
-      see their changes.  If users forget to use
-      the <option>-n</option> option, this has the side effect of
-      merging repository changes they may not be ready to deal
-      with.</para>
-
-    <para>Subversion removes this muddle by making the output of
-      <command>svn status</command> easy to read for both humans and
-      parsers.  Also, <command>svn update</command> prints only
-      information about files that are updated,
-      <emphasis>not</emphasis> local modifications.</para>
+    <title>Distinction entre les commandes status et update</title>
+
+    <para>Subversion essaie de dissiper la confusion qui règne entre les
+      commandes <command>cvs status</command> et
+      <command>cvs update</command>.</para>
+
+    <para>La commande <command>cvs status</command> a deux
+      objectifs : d'abord, lister pour l'utilisateur les
+      modifications locales de la version de travail et, ensuite,
+      indiquer à l'utilisateur quels fichiers ne sont plus à jour.
+      Malheureusement, en raison de l'affichage peu lisible de la
+      commande <userinput>cvs update</userinput>, beaucoup
+      d'utilisateurs de CVS n'utilisent plus cette commande. À la place,
+      ils ont pris l'habitude de lancer <userinput>cvs update</userinput>
+      ou <userinput>cvs -n update</userinput> pour visualiser leurs
+      changements rapidement. Si les utilisateurs oublient d'utiliser
+      l'option <option>-n</option>, cela a pour effet de bord de
+      fusionner des changements du dépôt qu'ils ne sont pas forcément
+      prêts à prendre en compte.</para>
+
+    <para>Subversion supprime ce cafouillage en facilitant la lecture de
+      <command>svn status</command> à la fois pour les humains et pour
+      les programmes d'analyse de texte. De plus, <command>svn
+      update</command> n'affiche que les informations relatives aux
+      fichiers qui ont été mis à jour côté dépôt,
+      <emphasis>pas les modifications locales</emphasis>.</para>

      <sect2 id="svn.forcvs.status-vs-update.status">
-      <title>Status</title>
-
-      <para><command>svn status</command> prints all files that have
-        local modifications.  By default, the repository is not
-        contacted.  While this subcommand accepts a fair number of
-        options, the following are the most commonly used ones:</para>
+      <title>svn status</title>
+
+      <para>La commande <command>svn status</command> liste tous les
+        fichiers qui ont des modifications locales. Par défaut, le dépôt
+        n'est pas contacté. Bien que cette sous-commande accepte un bon
+        nombre d'options, voici les plus utilisées :</para>

        <variablelist>
          <varlistentry>
            <term><option>-u</option></term>
            <listitem>
-            <para>Contact the repository to determine, and then display,
-              out-of-dateness information.</para>
+            <para>contacte le dépôt pour déterminer et lister les
+              informations de mise à jour ;</para>
            </listitem>
          </varlistentry>

          <varlistentry>
            <term><option>-v</option></term>
            <listitem>
-            <para>Show <emphasis>all</emphasis> entries under
-              version control.</para>
+            <para>liste <emphasis>tous les éléments</emphasis> soumis au
+              suivi de versions ;</para>
            </listitem>
          </varlistentry>

          <varlistentry>
            <term><option>-N</option></term>
            <listitem>
-            <para>Run nonrecursively (do not descend into
-              subdirectories).</para>
+            <para>exécution non récursive (ne pas descendre dans les
+              sous-répertoires).</para>
            </listitem>
          </varlistentry>
        </variablelist>

-      <para>The <command>svn status</command> command has two output
-        formats.  In the default <quote>short</quote> format, local
-        modifications look like this:</para>
+      <para>La commande <command>svn status</command> possède deux
+        formats de sortie. Dans le mode <quote>court</quote> mode par
+        défaut, les modifications locales sont présentées comme
+        ceci :</para>

        <screen>
  $ svn status
-M      foo.c
-M      bar/baz.c
+M      machin.c
+M      truc/bidule.c
  </screen>

-      <para>If you specify the <option>--show-updates</option>
-        (<option>-u</option>) option, a longer output format is
-        used:</para>
+      <para>Si vous spécifiez l'option <option>--show-updates</option>
+        (<option>-u</option>), un format d'affichage plus long sera
+        utilisé :</para>

        <screen>
  $ svn status -u
-M            1047   foo.c
-       *     1045   faces.html
-       *            bloo.png
-M            1050   bar/baz.c
-Status against revision:   1066
+M            1047   machin.c
+       *     1045   tetes.html
+       *            dessin.png
+M            1050   truc/bidule.c
+État par rapport à la révision  1066
  </screen>

-      <para>In this case, two new columns appear.  The second column
-        contains an asterisk if the file or directory is out of date.
-        The third column shows the working copy's revision number of the
-        item.  In the previous example, the asterisk indicates that
-        <filename>faces.html</filename> would be patched if we updated,
-        and that <filename>bloo.png</filename> is a newly added file in
-        the repository.  (The absence of any revision number next to
-        <filename>bloo.png</filename> means that it doesn't yet exist in
-        the working copy.)</para>
+      <para>Dans ce cas, deux nouvelles colonnes font leur apparition.
+        La deuxième colonne contient une astérisque si le fichier ou le
+        répertoire n'est plus à jour. La troisième colonne contient le
+        numéro de révision de la copie de travail pour l'élément
+        considéré. Dans l'exemple précédent, l'astérisque indique que
+        <filename>tetes.html</filename> serait modifié lors d'une mise à
+        jour et que <filename>dessin.png</filename> est un nouveau
+        fichier dans le dépôt (l'absence d'un numéro de révision pour
+        <filename>dessin.png</filename>indique qu'il n'existe pas dans
+        la copie de travail locale).</para>

        <!-- ###TODO describe -v here as well as -uv. -u and -v use
             different <quote>long</quote> formats and need to be
@@ -299,43 +325,46 @@
             paragraph *is* about -u, not -v, my patch concentrated on
             that. -->

-      <para>At this point, you should take a quick look at the list of
-        all possible status codes in
-        <xref linkend="svn.ref.svn.c.status"/>.  Here are a few of the
-        more common status codes you'll see:</para>
+      <para>Vous devriez maintenant jeter un oeil à la liste des codes
+        d'état possibles de <xref linkend="svn.ref.svn.c.status"/>.
+        Voici quelques codes d'état courants que vous
+        rencontrerez :</para>

        <screen>
-A    Resource is scheduled for Addition
-D    Resource is scheduled for Deletion
-M    Resource has local Modifications
-C    Resource has Conflicts (changes have not been completely merged
-       between the repository and working copy version)
-X    Resource is eXternal to this working copy (may come from another
-       repository).  See <xref linkend="svn.advanced.externals" />
-?    Resource is not under version control
-!    Resource is missing or incomplete (removed by a tool other than
+A    L'Ajout de l'élément est planifié
+D    La suppression de l'élément est planifiée
+M    L'élément a été Modifié localement
+C    L'élément est en Conflit (les changements n'ont pas été complètement
+       fusionnés entre la version du dépôt et la version de la copie de  
travail)
+X    L'élément est eXterne à cette copie de travail (il vient peut-être
+       d'un autre dépôt). Voir <xref linkend="svn.advanced.externals" />
+?    L'élément n'est pas suivi en versions
+!    L'élément est manquant ou incomplet (supprimé par un moyen autre que
         Subversion)
  </screen>

-      <para>For a more detailed discussion of <command>svn
-        status</command>, see <xref  
linkend="svn.tour.cycle.examine.status" />.</para>
+      <para>Pour plus de détails sur la commande <command>svn
+        status</command>, consultez <xref
+        linkend="svn.tour.cycle.examine.status" />.</para>

      </sect2>

      <sect2 id="svn.forcvs.status-vs-update.update">
-      <title>Update</title>
-
-      <para><command>svn update</command> updates your working copy,
-        and prints only information about files that it updates.</para>
-
-      <para>Subversion has combined CVS's <literal>P</literal> and
-        <literal>U</literal> codes into just <literal>U</literal>.  When
-        a merge or conflict occurs, Subversion simply prints
-        <literal>G</literal> or <literal>C</literal>, rather than a
-        whole sentence about it.</para>
-
-      <para>For a more detailed discussion of <command>svn
-        update</command>, see <xref linkend="svn.tour.cycle.update"  
/>.</para>
+      <title>svn update</title>
+
+      <para>La commande <command>svn update</command> met à jour votre
+      copie de travail et n'affiche que les informations relatives aux
+      fichiers qui ont été mis à jour.</para>
+
+      <para>Subversion combine les codes CVS <literal>P</literal> et
+        <literal>U</literal> dans le seul code <literal>U</literal>.
+        Quand une fusion ou un conflit apparaît, Subversion se contente
+        d'afficher <literal>G</literal> ou <literal>C</literal>, plutôt
+        qu'une phrase complète, pour indiquer ce qui se passe.</para>
+
+      <para>Pour plus d'informations sur <command>svn
+        update</command>, reportez-vous à <xref
+        linkend="svn.tour.cycle.update" />.</para>

      </sect2>

@@ -345,29 +374,30 @@
    <!-- =================================================================  
-->
    <!-- =================================================================  
-->
    <sect1 id="svn.forcvs.branches-and-tags">
-    <title>Branches and Tags</title>
-
-    <para>Subversion doesn't distinguish between filesystem space and
-      <quote>branch</quote> space; branches and tags are ordinary
-      directories within the filesystem.  This is probably the single
-      biggest mental hurdle that a CVS user will need to cross.  Read
-      all about it in <xref linkend="svn.branchmerge"/>.</para>
+    <title>Branches et étiquettes</title>
+
+    <para>Subversion ne fait pas de différence entre l'espace du système
+      de fichiers et l'espace des branches ; les branches et les
+      étiquettes sont de simples répertoires du système de fichiers.
+      C'est probablement l'obstacle psychologique le plus important que
+      les utilisateurs de CVS doivent franchir. Pour tout savoir sur ce
+      sujet, rendez-vous au <xref linkend="svn.branchmerge"/>.</para>

      <warning>

-      <para>Since Subversion treats branches and tags as ordinary
-        directories, your project's various lines of development
-        probably live in subdirectories of the main project directory.
-        So remember to check out using the URL of the subdirectory
-        that contains the particular line of development you want, not
-        the project's root URL.  If you make the mistake of checking
-        out the root of the project, you may very well wind up with a
-        working copy that contains a complete copy of your project's
-        content for each and every one of its branches and tags.
-        <footnote>
-          <para>That is, providing you don't run out of disk space
-            before your checkout finishes.</para>
-        </footnote>
+      <para>Puisque Subversion traite les branches et les étiquettes
+        comme de simples répertoires, les différentes lignes de
+        développement de votre projet sont probablement hébergées dans
+        des sous-répertoires du répertoire du projet principal. En
+        conséquence, n'oubliez pas de faire vos extractions en
+        spécifiant l'URL du sous-répertoire qui contient la ligne de
+        développement que vous désirez et pas l'URL racine du projet.
+        Sinon, il y a de grandes chances pour que vous récupériez une
+        copie complète de votre projet, y compris toutes les branches et
+        toutes les étiquettes<footnote>
+          <para>tout du moins si vous avez suffisamment d'espace disque
+            pour pouvoir terminer l'extraction.</para>
+        </footnote>.
        </para>
      </warning>

@@ -378,20 +408,21 @@
    <!-- =================================================================  
-->
    <!-- =================================================================  
-->
    <sect1 id="svn.forcvs.properties">
-    <title>Metadata Properties</title>
-
-    <para>A new feature of Subversion is that you can attach arbitrary
-      metadata (or <quote>properties</quote>) to files and
-      directories.  Properties are arbitrary name/value pairs
-      associated with files and directories in your working
-      copy.</para>
-
-    <para>To set or get a property name, use the <command>svn
-      propset</command> and <command>svn propget</command>
-      subcommands.  To list all properties on an object, use
-      <command>svn proplist</command>.</para>
-
-    <para>For more information, see <xref  
linkend="svn.advanced.props"/>.</para>
+    <title>Propriétés des méta-données</title>
+
+    <para>Une nouvelle fonctionnalité de Subversion est la possibilité
+      d'affecter des méta-données arbitraires (ou
+      <quote>propriétés</quote>) aux fichiers et répertoires. Les
+      propriétés sont des couples nom/valeur arbitraires associés aux
+      fichiers et répertoires de votre copie de travail locale.</para>
+
+    <para>Pour définir ou récupérer un nom de propriété, utilisez les
+      sous-commandes <command>svn propset</command> et <command>svn
+      propget</command>. Pour obtenir la liste de toutes les propriétés
+      d'un objet, utilisez <command>svn proplist</command>.</para>
+
+    <para>Pour plus d'informations, reportez-vous à <xref
+      linkend="svn.advanced.props"/>.</para>

    </sect1>

@@ -399,27 +430,30 @@
    <!-- =================================================================  
-->
    <!-- =================================================================  
-->
    <sect1 id="svn.forcvs.conflicts">
-    <title>Conflict Resolution</title>
-
-    <para>CVS marks conflicts with inline <quote>conflict
-      markers,</quote> and then prints a <literal>C</literal> during
-      an update or merge operation.  Historically, this has caused
-      problems, because CVS isn't doing enough.  Many users forget
-      about (or don't see) the <literal>C</literal> after it whizzes
-      by on their terminal.  They often forget that the conflict
-      markers are even present, and then accidentally commit files
-      containing those conflict markers.</para>
-
-    <para>Subversion solves this problem in a pair of ways.  First,
-      when a conflict occurs in a file, Subversion records the fact
-      that the file is in a state of conflict, and won't allow you to
-      commit changes to that file until you explicitly resolve the
-      conflict.  Second, Subversion 1.5 provides interactive
-      conflict resolution, which allows you to resolve conflicts as
-      they happen instead of having to go back and do so after the
-      update or merge operation completes.  See <xref
-      linkend="svn.tour.cycle.resolve" /> for more about conflict
-      resolution in Subversion.</para>
+    <title>Résolution des conflits</title>
+
+    <para>CVS signale les conflits par des <quote>marqueurs de
+      conflits</quote> insérés directement dans les fichiers puis
+      affiche un <literal>C</literal> pendant l'opération de mise à jour
+      ou de fusion. Historiquement, ce comportement a généré beaucoup de
+      problèmes, car CVS ne finit pas son travail. Beaucoup
+      d'utilisateurs oublient (ou ne voient pas) le <literal>C</literal>
+      une fois qu'il disparaît de l'écran. Ils oublient aussi souvent
+      que les marqueurs de conflit sont toujours présents et,
+      accidentellement, propagent des fichiers contenant ces marqueurs
+      de conflit.</para>
+
+    <para>Subversion corrige ce problème de deux façons. D'abord, quand
+      un conflit est détecté sur un fichier, Subversion enregistre le
+      fait que le fichier est en conflit et refuse de propager des
+      modifications concernant ce fichier tant que vous ne résolvez pas
+      explicitement le conflit. Ensuite, Subversion 1.5 propose une
+      résolution interactive des conflits, ce qui vous permet de
+      résoudre les conflits au moment où ils apparaissent plutôt que
+      d'avoir à revenir dessus une fois que la fusion ou la mise à jour
+      est terminée. Consultez <xref linkend="svn.tour.cycle.resolve" />
+      pour plus d'informations sur la résolution des conflits avec
+      Subversion.</para>

    </sect1>

@@ -427,50 +461,55 @@
    <!-- =================================================================  
-->
    <!-- =================================================================  
-->
    <sect1 id="svn.forcvs.binary-and-trans">
-    <title>Binary Files and Translation</title>
-
-    <para>In the most general sense, Subversion handles binary files
-      more gracefully than CVS does.  Because CVS uses RCS, it can
-      only store successive full copies of a changing binary file.
-      Subversion, however, expresses differences between files using a
-      binary differencing algorithm, regardless of whether they
-      contain textual or binary data.  That means all files are
-      stored differentially (compressed) in the repository.</para>
-
-    <para>CVS users have to mark binary files with
-      <option>-kb</option> flags to prevent data from being
-      garbled (due to keyword expansion and line-ending translations).
-      They sometimes forget to do this.</para>
-
-    <para>Subversion takes the more paranoid route.  First, it never
-      performs any kind of keyword or line-ending translation unless
-      you explicitly ask it to do so (see <xref
-      linkend="svn.advanced.props.special.keywords"/> and <xref
-      linkend="svn.advanced.props.special.eol-style"/> for more details).   
By default,
-      Subversion treats all file data as literal byte strings, and
-      files are always stored in the repository in an untranslated
-      state.</para>
-
-    <para>Second, Subversion maintains an internal notion of whether a
-      file is <quote>text</quote> or <quote>binary</quote> data, but
-      this notion is <emphasis>only</emphasis> extant in the working
-      copy.  During an <command>svn update</command>, Subversion will
-      perform contextual merges on locally modified text files, but
-      will not attempt to do so for binary files.</para>
-
-    <para>To determine whether a contextual merge is possible,
-      Subversion examines the <literal>svn:mime-type</literal>
-      property.  If the file has no <literal>svn:mime-type</literal>
-      property, or has a MIME type that is textual (e.g.,
-      <literal>text/*</literal>),
-      Subversion assumes it is text.  Otherwise, Subversion assumes
-      the file is binary.  Subversion also helps users by running a
-      binary-detection algorithm in the <command>svn import</command>
-      and <command>svn add</command> commands.  These commands will
-      make a good guess and then (possibly) set a binary
-      <literal>svn:mime-type</literal> property on the file being
-      added.  (If Subversion guesses wrong, the user can always remove
-      or hand-edit the property.)</para>
+    <title>Fichiers binaires et conversions</title>
+
+    <para>En général, Subversion se débrouille mieux avec les fichiers
+      binaires que CVS. Comme CVS utilise RCS, il est seulement capable
+      de stocker successivement des copies entières d'un fichier binaire
+      modifié. Subversion, en revanche, utilise un algorithme de
+      différenciation binaire, indépendant du contenu textuel ou binaire
+      des fichiers, pour déterminer les différences entre les fichiers.
+      Cela veut dire que tous les fichiers sont stockés de manière
+      différentielle (compressée) dans le dépôt.</para>
+
+    <para>Les utilisateurs de CVS doivent marquer les fichiers binaires
+      avec l'indicateur <option>-kb</option> pour empêcher que les
+      données ne soient corrompues (par l'expansion des mots-clés et les
+      conversions de fins de lignes). Ils oublient quelquefois de le
+      faire.</para>
+
+    <para>Subversion utilise une approche plus paranoïaque. Premièrement,
+      il ne fait aucune substitution de mot-clé ou de fin de ligne à
+      moins qu'on ne le lui demande explicitement (voir <xref
+      linkend="svn.advanced.props.special.keywords"/> et <xref
+      linkend="svn.advanced.props.special.eol-style"/> pour plus de
+      détails). Par défaut, Subversion considère que les fichiers de
+      données sont des suites littérales d'octets et les fichiers sont
+      toujours stockés dans le dépôt dans un état
+      <quote>non-converti</quote>.</para>
+
+    <para>Deuxièmement, Subversion conserve une notion interne pour le
+      contenu de chaque fichier : <quote>texte</quote> ou
+      <quote>binaire</quote>. Mais <emphasis>cette notion ne s'applique
+      qu'à la copie de travail locale</emphasis>. Lors d'un
+      <command>svn update</command>, Subversion effectue des fusions
+      contextuelles sur les fichiers texte modifiés localement mais ne
+      tente pas d'en faire autant pour les fichiers binaires.</para>
+
+    <para>Pour déterminer si une fusion contextuelle est possible,
+      Subversion examine la propriété  <literal>svn:mime-type</literal>.
+      Si le fichier ne possède pas la propriété
+      <literal>svn:mime-type</literal> ou si le type MIME est textuel
+      (par exemple  <literal>text/*</literal>), Subversion considère que
+      c'est du texte. Sinon, Subversion considère que le fichier est
+      binaire. Subversion aide également les utilisateurs en incluant
+      l'exécution d'un algorithme de détection des fichiers binaires
+      dans les commandes <command>svn import</command>
+      et <command>svn add</command>. Ces commandes tentent de deviner
+      puis affectent (éventuellement) un type binaire à la propriété
+      <literal>svn:mime-type</literal> du fichier ajouté (si Subversion
+      se trompe dans la détection, l'utilisateur peut toujours supprimer
+      ou éditer à la main la propriété).</para>

    </sect1>

@@ -479,16 +518,18 @@
    <!-- =================================================================  
-->
    <sect1 id="svn.forcvs.modules">

-    <title>Versioned Modules</title>
-
-    <para>Unlike CVS, a Subversion working copy is aware that it has
-      checked out a module.  That means if somebody changes the
-      definition of a module (e.g., adds or removes components), a
-      call to <command>svn update</command> will update the working
-      copy appropriately, adding and removing components.</para>
-
-    <para>Subversion defines modules as a list of directories within a
-      directory property; see <xref  
linkend="svn.advanced.externals"/>.</para>
+    <title>Suivi en versions des modules</title>
+
+    <para>Contrairement à CVS, une copie de travail locale de Subversion
+      sait qu'elle est l'extraction d'un module. Cela signifie que si
+      quelqu'un change la définition du module (par exemple ajoute ou
+      supprime des composants), un appel à <command>svn update</command>
+      met à jour la copie de travail correctement, en ajoutant et
+      supprimant les composants concernés.</para>
+
+    <para>Subversion définit les modules comme une liste de répertoires
+      formant une propriété d'un répertoire ; voir <xref
+      linkend="svn.advanced.externals"/>.</para>

    </sect1>

@@ -497,31 +538,32 @@
    <!-- =================================================================  
-->
    <sect1 id="svn.forcvs.auth">

-    <title>Authentication</title>
-
-    <para>With CVS's pserver, you are required to log in to the server
-      (using the <command>cvs login</command> command) before
-      performing any read or write operation—you sometimes even
-      have to log in for anonymous operations.  With a Subversion
-      repository using Apache <command>httpd</command> or
-      <command>svnserve</command> as the server, you don't provide any
-      authentication credentials at the outset—if an operation
-      that you perform requires authentication, the server will
-      challenge you for your credentials (whether those credentials
-      are username and password, a client certificate, or even both).
-      So if your repository is world-readable, you will not be
-      required to authenticate at all for read operations.</para>
-
-    <para>As with CVS, Subversion still caches your credentials on
-      disk (in your <filename>~/.subversion/auth/</filename>
-      directory) unless you tell it not to by using the
-      <option>--no-auth-cache</option> option.</para>
-
-    <para>The exception to this behavior, however, is in the case of
-      accessing an <command>svnserve</command> server over an SSH
-      tunnel, using the <literal>svn+ssh://</literal> URL scheme.  In
-      that case, the <command>ssh</command> program unconditionally
-      demands authentication just to start the tunnel.</para>
+    <title>Authentification</title>
+
+    <para>Avec le pserver de CVS, vous devez vous connecter au serveur
+      (en utilisant la commande <command>cvs login</command>) avant
+      n'importe quelle opération de lecture ou d'écriture —
+      parfois, vous devez même vous authentifier pour des opérations en
+      mode anonyme. Avec un dépôt Subversion utilisant Apache
+      <command>httpd</command> ou <command>svnserve</command>, vous
+      n'avez pas besoin de vous authentifier a priori — si une
+      opération nécessite que vous vous authentifiez, le serveur vous
+      demande de le faire (que ce soit par identifiant et mot de passe,
+      certificat client ou les deux). Ainsi, si votre dépôt est
+      accessible en lecture pour tous, vous n'avez pas besoin de vous
+      authentifier pour les opérations de lecture.</para>
+
+    <para>Comme CVS, Subversion met en cache sur le disque vos éléments
+      d'authentification (dans votre répertoire
+      <filename>~/.subversion/auth/</filename> à moins que vous ne lui
+      spécifiez le contraire avec l'option
+      <option>--no-auth-cache</option>.</para>
+
+    <para>Ce comportement possède une exception : l'accès à un
+      serveur <command>svnserve</command> via un tunnel SSH, en
+      utilisant les URL de type <literal>svn+ssh://</literal>. Dans ce
+      cas, le programme <command>ssh</command> vous demande toujours de
+      vous authentifier avant d'ouvrir le tunnel.</para>

    </sect1>

@@ -530,31 +572,35 @@
    <!-- =================================================================  
-->
    <sect1 id="svn.forcvs.convert">

-    <title>Converting a Repository from CVS to Subversion</title>
-
-    <para>Perhaps the most important way to familiarize CVS users with
-      Subversion is to let them continue to work on their projects
-      using the new system.  And while that can be somewhat
-      accomplished using a flat import into a Subversion repository of
-      an exported CVS repository, the more thorough solution involves
-      transferring not just the latest snapshot of their data, but all
-      the history behind it as well, from one system to another.  This
-      is an extremely difficult problem to solve; it involves
-      deducing changesets in the absence of atomicity and translating
-      between the systems' completely orthogonal branching policies,
-      among other complications.  Still, a handful of tools claim
-      to at least partially support the ability to convert
-      existing CVS repositories into Subversion ones.</para>
-
-    <para>The most popular (and mature) conversion tool is
-      cvs2svn (<ulink url="http://cvs2svn.tigris.org/"/>), a Python
-      program originally created by members of Subversion's own
-      development community.  This tool is meant to run exactly once:
-      it scans your CVS repository multiple times and attempts to
-      deduce commits, branches, and tags as best it can.  When it
-      finishes, the result is either a Subversion repository or a
-      portable Subversion dump file representing your code's history.
-      See the web site for detailed instructions and caveats.</para>
+    <title>Convertir un dépôt CVS vers Subversion</title>
+
+    <para>La meilleure façon d'habituer les utilisateurs CVS à
+      Subversion est certainement de les laisser continuer à travailler
+      sur leurs projets en utilisant le nouveau système. Et, bien que
+      cela puisse être fait par un import <quote>à plat</quote> dans le
+      dépôt Subversion d'un dépôt CVS exporté, la solution la plus
+      aboutie implique de transférer d'un système à l'autre non
+      seulement la dernière version des données mais aussi tout
+      l'historique qui va avec. C'est un problème particulièrement
+      ardu ; cela implique, parmi d'autres complications, de
+      déterminer les modifications qui vont ensemble, en l'absence
+      d'atomicité et de mécanisme de conversion entre les politiques
+      totalement contradictoires de gestion des branches des deux
+      systèmes. Néanmoins, il existe quelques outils qui se prétendent
+      capables de convertir, au moins en partie, des dépôts CVS en
+      dépôts Subversion.</para>
+
+    <para>L'outil le plus populaire (et le plus abouti) est cvs2svn
+      (<ulink url="http://cvs2svn.tigris.org/"/> site en anglais), un
+      programme en Python créé à l'origine par des membres de la
+      communauté de développement Subversion elle-même. Cet outil n'est
+      censé être lancé qu'une seule fois : il analyse votre dépôt
+      CVS plusieurs fois et essaie d'en déduire des propagations, des
+      branches et des étiquettes autant qu'il le peut. Au final, le
+      résultat est soit un dépôt Subversion soit un fichier dump
+      Subversion représentant l'historique du code. Consultez le site
+      web pour le détail des instructions et les précautions
+      d'usage.</para>

    </sect1>



More information about the svnbook-dev mailing list