[svnbook] r3733 committed - * src/fr/book/ch08-embedding-svn.xml...

svnbook at googlecode.com svnbook at googlecode.com
Fri May 7 05:46:01 CDT 2010


Revision: 3733
Author: subversif999 at gmail.com
Date: Fri May  7 03:45:10 2010
Log: * src/fr/book/ch08-embedding-svn.xml
   - Fix typos

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

Modified:
  /trunk/src/fr/book/ch08-embedding-svn.xml

=======================================
--- /trunk/src/fr/book/ch08-embedding-svn.xml	Tue Mar 23 15:21:44 2010
+++ /trunk/src/fr/book/ch08-embedding-svn.xml	Fri May  7 03:45:10 2010
@@ -4,11 +4,12 @@
    <para>Subversion est conçu de manière modulaire : il est
      constitué d'un ensemble de bibliothèques écrites en langage C.
      Chaque bibliothèque a un but et une interface de programmation
-    (API, <quote>application programming interface</quote> en anglais) bien
-    définis ; cette interface est disponible non seulement pour le
+    (API, <foreignphrase>application programming
+    interface</foreignphrase> en anglais) bien définis ;
+    cette interface est disponible non seulement pour le
      propre usage de Subversion mais aussi pour n'importe quel programme
      qui souhaite inclure ou piloter Subversion d'une manière ou d'une
-    autre. En plus, l'API Subversion est non seulement disponible pour
+    autre. De plus, l'API Subversion est non seulement disponible pour
      les programmes écrits en langage C, mais aussi pour les programmes
      écrits dans des langages de plus haut niveau tels que Python, Perl,
      Java et Ruby.</para>
@@ -33,16 +34,16 @@
      <title>Organisation des bibliothèques en couches successives</title>

      <para>Chaque bibliothèque au sein de Subversion peut être classée
-      dans une des trois couches principales — la couche dépôt, la
-      couche d'accès au dépôt (RA pour <quote>repository access</quote>
-      en anglais) et la couche client (voir la <xref
-      linkend="svn.intro.architecture.dia-1" /> de la préface). Nous
-      allons examiner ces trois couches rapidement mais, d'abord,
+      dans une des trois couches principales : la couche dépôt, la
+      couche d'accès au dépôt (RA pour <foreignphrase>Repository
+      Access</foreignphrase> en anglais) et la couche client (voir la
+      <xref linkend="svn.intro.architecture.dia-1" /> de la préface).
+      Nous allons examiner ces trois couches rapidement mais, d'abord,
        passons brièvement en revue les différentes bibliothèques de
        Subversion. Pour des raisons de cohérence, nous nous référons à
        ces bibliothèques par leurs noms Unix sans extension
        (<filename>libsvn_fs</filename>, <filename>libsvn_wc</filename>,
-      <filename>mod_dav_svn</filename>, etc.).</para>
+      <filename>mod_dav_svn</filename>, etc.).</para>

      <variablelist>
        <varlistentry>
@@ -111,7 +112,7 @@
        <varlistentry>
          <term>libsvn_wc</term>
          <listitem><para>bibliothèque pour la gestion de la copie de
-          travail local ;</para></listitem>
+          travail locale ;</para></listitem>
        </varlistentry>
        <varlistentry>
          <term>mod_authz_svn</term>
@@ -145,7 +146,7 @@
        <filename>libsvn_ra_serf</filename> et
        <filename>libsvn_ra_svn</filename> implémentent toutes la même
        interface et fonctionnent comme des greffons pour
-      <filename>libsvn_ra</filename>.  Et toutes les quatre communiquent
+      <filename>libsvn_ra</filename>. Et toutes les quatre communiquent
        avec la couche dépôt — <filename>libsvn_ra_local</filename>
        se connectant directement au dépôt, les trois autres le faisant à
        travers le réseau.
@@ -166,10 +167,11 @@
        fournissent différents types d'IHM. Ces interfaces graphiques
        utilisent la même API que le client en ligne de commande fourni en
        standard. Depuis le début, cette modularité joue un rôle majeur
-      dans la prolifération des différents clients Subversion (sous la
+      dans la prolifération des différents clients Subversion, sous la
        forme de clients autonomes ou greffés dans des environnements de
-      développement intégrés [IDE en anglais]) et, par extension, dans
-      l'adoption formidablement rapide de Subversion lui-même.</para>
+      développement intégrés (<foreignphrase>IDE</foreignphrase> en
+      anglais) et, par extension, dans l'adoption formidablement rapide
+      de Subversion lui-même.</para>

      <!-- ===============================================================  
-->
      <sect2 id="svn.developer.layerlib.repos">
@@ -221,7 +223,7 @@
          vous pouvez attendre de n'importe quel autre système de
          fichiers : vous pouvez créer et supprimer des fichiers et
          des répertoires, les copier et les déplacer, modifier le contenu
-        d'un fichier, etc. Elle possède également des caractéristiques
+        d'un fichier, etc. Elle possède également des caractéristiques
          peu communes comme la capacité d'ajouter, modifier et supprimer
          des méta-données (<quote>propriétés</quote>) sur chaque fichier
          ou répertoire. En outre, le système de fichiers Subversion est
@@ -229,7 +231,7 @@
          si vous faites des modifications dans votre arborescence,
          Subversion se souvient de l'état de votre arborescence avant les
          modifications. Et il se souvient aussi de l'état avant les
-        modifications précédentes, et l'état encore antérieur, et ainsi
+        modifications précédentes, et de l'état encore antérieur, et ainsi
          de suite. Vous pouvez ainsi remonter le temps (c'est-à-dire les
          versions) jusqu'au moment où vous avez commencé à ajouter des
          éléments dans le système de fichiers.</para>
@@ -241,19 +243,19 @@

        <orderedlist>
          <listitem>
-          <para>Commencer une transaction de propagation de
+          <para>commencer une transaction de propagation de
              Subversion ;</para>
          </listitem>
          <listitem>
-          <para>Effectuer les modifications (ajouts, suppressions,
-            modifications de propriétés, etc.) ;</para>
+          <para>effectuer les modifications (ajouts, suppressions,
+            modifications de propriétés, etc.) ;</para>
          </listitem>
          <listitem>
-          <para>Clore la transaction.</para>
+          <para>clore la transaction.</para>
          </listitem>
        </orderedlist>

-      <para>Une fois que la transaction est cloturée, les
+      <para>Une fois que la transaction est terminée, les
          modifications du système de fichiers sont stockées de
          façon permanente en tant qu'éléments de l'historique. Chacun de
          ces cycles génère une nouvelle révision de l'arborescence et
@@ -345,7 +347,7 @@
          qui demande un argument de type <literal>chemin</literal> attend
          également un argument de type <literal>racine</literal> (dénommé
          en fait <literal>svn_fs_root_t</literal>). Cet argument décrit
-        soit une révision soit une transaction (qui est en fait la
+        soit une révision, soit une transaction (qui est en fait la
          genèse d'une révision) et fournit la troisième dimension,
          l'élément de contexte indispensable pour différencier
          <filename>/machin/bidule</filename> dans la révision 32 et le
@@ -355,20 +357,20 @@
          l'univers du système de fichiers Subversion.</para>

        <figure id="svn.developer.layerlib.repos.dia-2">
-        <title>Ajouter le temps pour le suivi de versions — la
-          troisième dimension !</title>
+        <title>Prise en compte du temps — la
+          troisième dimension de la gestion de versions !</title>
          <graphic fileref="images/ch08dia2.png"/>
        </figure>

        <para>Comme nous l'avons déjà mentionné, l'API de
          <filename>libsvn_fs</filename> ressemble à s'y méprendre à celle
          de n'importe quel autre système de fichiers, sauf qu'on y a
-        ajouté la formidable capacité de suivre les versions. Elle a été
+        ajouté la formidable capacité de gestion des versions. Elle a été
          conçue pour être utilisable par n'importe quel programme ayant
-        besoin d'un système de fichiers suivi en versions. Et, ce n'est
-        pas un hasard, Subversion lui-même est intéressé par une telle
+        besoin d'un système de fichiers suivi en versions. Et ce n'est
+        pas un hasard si Subversion lui-même est intéressé par une telle
          fonctionnalité. Mais, bien que cette API soit suffisante pour
-        effectuer un suivi en versions basique des fichiers et des
+        effectuer une gestion de versions basique des fichiers et des
          répertoires, Subversion en demande plus, et c'est là que
          <filename>libsvn_repos</filename> entre en scène.</para>

@@ -409,7 +411,7 @@
          </listitem>
          <listitem>
            <para>obtenir les messages de propagation associés à toutes
-            (ou certaines) les révisions qui ont modifié un ensemble de
+            les révisions (ou certaines) qui ont modifié un ensemble de
              fichiers du système de fichiers ;</para>
          </listitem>
          <listitem>
@@ -425,8 +427,8 @@
        </itemizedlist>

        <para>Comme Subversion continue à évoluer, la bibliothèque du dépôt
-      grandit avec la bibliothèque du système de fichiers pour offrir
-      davantage de fonctionnalités et des options configurables.</para>
+        grandit avec la bibliothèque du système de fichiers pour offrir
+        davantage de fonctionnalités et des options configurables.</para>

      </sect2>

@@ -436,10 +438,10 @@

        <para>Si la couche Dépôt de Subversion est <quote>à l'autre bout
          de la ligne</quote>, la couche d'accès au dépôt (RA pour
-        <quote>repository access</quote> en anglais) est la ligne en
-        tant que telle. Chargée d'organiser les données entre les
-        bibliothèques client et le dépôt, cette couche inclut la
-        bibliothèque de chargement du module
+        <foreignphrase>repository access</foreignphrase> en anglais)
+        est la ligne en tant que telle. Chargée d'organiser les données
+        entre les bibliothèques client et le dépôt, cette couche inclut
+        la bibliothèque de chargement du module
          <filename>libsvn_ra</filename>, les modules RA eux-mêmes (qui
          incluent à l'heure actuelle <filename>libsvn_ra_neon</filename>,
          <filename>libsvn_ra_local</filename>,
@@ -492,10 +494,10 @@
          fonctionnalités nécessaires pour envoyer des données suivies en
          versions vers le dépôt et pour en recevoir. Chacun des greffons
          RA disponibles est capable d'effectuer ces tâches en utilisant
-        un protocole particulier :<filename>libsvn_ra_dav</filename>
+        un protocole particulier : <filename>libsvn_ra_dav</filename>
          utilise le protocole HTTP/WebDAV (avec chiffrement SSL en
          option) pour communiquer avec un serveur HTTP Apache sur lequel
-        fonctionne le module serveur Subversion
+        tourne le module serveur Subversion
          <filename>mod_dav_svn</filename> ;
          <filename>libsvn_ra_svn</filename> utilise un protocole réseau
          propre à Subversion pour communiquer avec le programme
@@ -507,10 +509,10 @@
          tout simplement écrire une nouvelle bibliothèque qui implémente
          l'interface RA d'un côté et qui communique avec le dépôt de
          l'autre. Votre nouvelle bibliothèque peut utiliser des
-        protocoles réseaux existants ou vous pouvez en inventer un
-        nouveau. Vous pourriez ainsi utiliser les communications
-        inter-processus (IPC pour <quote>interprocess
-        communication</quote> en anglais) ou même, soyons fou,
+        protocoles réseaux existants ou vous pouvez en inventer de
+        nouveaux. Vous pouvez ainsi utiliser les communications
+        inter-processus (IPC pour <foreignphrase>interprocess
+        communication</foreignphrase> en anglais) ou même, soyons fou,
          implémenter un protocole basé sur l'email. Subversion apporte
          les API, à vous d'apporter la créativité.</para>

@@ -520,8 +522,8 @@
      <sect2 id="svn.developer.layerlib.client">
        <title>Couche client</title>

-      <para>Côté client, la copie de travail Subversion est l'endroit où
-        tout se passe. Le gros des fonctionnalités implémentées par les
+      <para>Côté client, tout se passe dans la copie de travail
+        Subversion. Le gros des fonctionnalités implémentées par les
          bibliothèques client existe dans le seul but de gérer les copies
          de travail locales — des répertoires pleins de fichiers et
          d'autres sous-répertoires qui sont une sorte de copie locale et
@@ -531,19 +533,20 @@
        <para>La bibliothèque de Subversion pour la copie de travail,
          <filename>libsvn_wc</filename>, est directement responsable de
          la gestion des données dans les copies de travail. Pour ce
-        faire, la bibliothèque stocke des données d'administration à
-        propos de chaque répertoire suivi en versions dans un
-        sous-répertoire spécial. Ce sous-répertoire, nommé
+        faire, la bibliothèque stocke dans un sous-répertoire spécial
+        des données d'administration concernant chaque répertoire
+        suivi en versions. Ce sous-répertoire, nommé
          <filename>.svn</filename>, est présent dans chaque répertoire
          d'une copie de travail ; il contient tout un tas de
          fichiers et de répertoires qui enregistrent l'état du répertoire
          suivi en versions et fournit un espace privé pour les actions
          d'administration. Pour les habitués de CVS, ce sous-répertoire
          <filename>.svn</filename> a des objectifs similaires aux
-        répertoires administratifs CVS que l'on trouve dans les copies
-        de travail CVS. Pour plus d'informations sur la zone
-        d'administration <filename>.svn</filename>, reportez-vous à
-        <xref linkend="svn.developer.insidewc"/>  plus loin dans ce
+        répertoires administratifs <filename>CVS</filename> que l'on
+        trouve dans les copies de travail CVS.
+        Pour plus d'informations sur la zone d'administration
+        <filename>.svn</filename>, reportez-vous à
+        <xref linkend="svn.developer.insidewc"/> plus loin dans ce
          chapitre.</para>

        <para>La bibliothèque client de Subversion,
@@ -552,7 +555,7 @@
          fonctionnalités de la bibliothèque de la copie de travail avec
          celles de la couche d'accès au dépôt (RA) afin de fournir l'API
          de plus haut niveau, utilisable par n'importe quelle application
-        qui voudrait effectuer des actions générales de suivi de
+        qui voudrait effectuer des actions générales de gestion de
          versions. Par exemple, la fonction
          <function>svn_client_checkout()</function> prend une URL en
          argument. Elle passe cette URL à la couche RA et ouvre une
@@ -560,17 +563,18 @@
          ensuite au dépôt l'arborescence requise, envoie cette
          arborescence à la bibliothèque de la copie de travail, qui
          écrit alors une copie de travail complète sur le disque (les
-        répertoires <filename>.svn</filename> et tout).</para>
+        répertoires <filename>.svn</filename> et tout le reste).</para>

        <para>La bibliothèque client est conçue pour être utilisée par
          n'importe quelle application. Alors que le code source de
          Subversion inclut un client standard en ligne de commande, le
-        but recherché est qu'il doit être très facile d'écrire un nombre
-        quelconque de clients utilisant une interface utilisateur
-        graphique (GUI en anglais) par dessus cette bibliothèque client.
-        Les nouvelles GUI (ou les nouveaux clients en fait) pour
-        Subversion n'ont aucune raison de n'être que des sur-couches au
-        client en ligne de commande : elles ont un accès total, via
+        but recherché est qu'il soit très facile d'écrire un nombre
+        quelconque de clients dotés d'un environnement graphique
+        (<foreignphrase>GUI</foreignphrase> en anglais) par-dessus
+        cette bibliothèque client. Il n'y a pas de raison que les
+        nouveaux environnements graphiques (ou les nouveaux clients en
+        fait) pour Subversion ne soient que des sur-couches au client
+        en ligne de commande : ils ont un accès total, via
          l'API <filename>libsvn_client</filename>, aux mêmes
          fonctionnalités, données et autres mécanismes que le client en
          ligne de commande utilise. En fait, le code source de Subversion
@@ -594,7 +598,7 @@
            un affichage lisible par l'utilisateur. Ce type de traduction
            peut induire des pertes. C'est-à-dire que le programme
            n'affiche peut-être pas l'ensemble des informations qu'il a
-          obtenu de l'API ou alors qu'il combine peut-être certaines
+          obtenues de l'API ou qu'il combine peut-être certaines
            informations pour obtenir une représentation plus
            compacte.</para>

@@ -611,7 +615,7 @@
          <para>Mais l'argument décisif quant à l'utilisation directe des
            API plutôt que d'encapsuler d'autres programmes est que le
            projet Subversion assure la compatibilité vis-à-vis de ses
-          API. Lors des changements de versions mineurs des API (comme
+          API. Lors des changements de version mineure des API (comme
            par exemple entre la version 1.3 et 1.4), aucun prototype de
            fonction ne change. En d'autres termes, vous n'êtes pas forcé
            de mettre à jour le code source de votre programme simplement
@@ -620,8 +624,8 @@
            fonctionneront toujours. Ainsi, cela vous laisse de la marge
            pour éventuellement adopter les nouvelles API. Ce type de
            promesse de compatibilité n'existe pas pour les sorties du
-          programme Subversion en ligne de commande, qui est susceptible
-          de changer à chaque version.</para>
+          programme Subversion en ligne de commande, qui sont
+          susceptibles de changer à chaque version.</para>

        </sidebar>

@@ -643,9 +647,9 @@

      <itemizedlist>
        <listitem>
-        <para>à quel emplacement du dépôt font référence les fichiers et
-          les sous-répertoires dans le répertoire de la copie de
-          travail ;</para>
+        <para>à quel emplacement du dépôt les fichiers et les
+          sous-répertoires du répertoire de la copie de travail
+          font référence ;</para>
        </listitem>
        <listitem>
          <para>quelle révision de chacun de ces fichiers et répertoires
@@ -689,7 +693,7 @@
          originales et des propriétés, les informations d'état sur les
          conflits et les actions planifiées, les dernières informations
          connues sur les propagations (auteur, numéro de révision et
-        horodatage), l'historique de la copie locale —
+        horodatage) et l'historique de la copie locale :
          pratiquement tout ce qui intéresse un client Subversion à propos
          d'un élément suivi (ou à suivre) en versions !</para>

@@ -729,23 +733,23 @@
        <para>Comme mentionné auparavant, le répertoire
          <filename>.svn</filename> contient aussi les copies originales
          (avant modification locale) des fichiers : les
-        <quote>versions de base</quote> (<quote>text-base
-        versions</quote> en anglais). Vous pouvez les trouver dans
-        le répertoire <filename>.svn/text-base</filename>. Ces copies
-        originales offrent tout un tas d'avantages —
+        <quote>versions de base</quote> (<foreignphrase>text-base
+        versions</foreignphrase> en anglais). Vous pouvez les trouver
+        dans le répertoire <filename>.svn/text-base</filename>. Ces
+        copies originales offrent tout un tas d'avantages —
          identification des différences et des modifications, retour en
          arrière sur les fichiers modifiés ou supprimés, tout cela sans
-        faire appel au réseau ; échanges plus performants avec le
+        faire appel au réseau ; échanges plus performants avec le
          serveur — mais au prix d'avoir chaque fichier stocké au
          moins en double sur le disque. De nos jours, c'est pratiquement
          négligeable pour la majorité des fichiers. Cependant, la
          situation se détériore à mesure que vos fichiers suivis en
-        versions grandissent. Nous étudions dorénavant la possibilité de
-        rendre optionnel la présence de ces fichiers <quote>versions de
+        versions grossissent. Nous étudions dorénavant la possibilité de
+        rendre optionnelle la présence de ces <quote>versions de
          base</quote>. Cependant, c'est justement quand vos fichiers
-        suivis en versions grandissent que l'existence de fichiers
-        <quote>versions de base</quote> devient cruciale — qui
-        veut transmettre un énorme fichier à travers le réseau juste
+        suivis en versions grossissent que l'existence des
+        <quote>versions de base</quote> devient cruciale : qui a
+        envie de transmettre un énorme fichier à travers le réseau juste
          parce qu'il veut propager une petite modification ?</para>

        <para>Dans le même esprit que les fichiers <quote>versions de
@@ -771,7 +775,7 @@
      <para>Développer des applications utilisant les API des
        bibliothèques Subversion est plutôt simple. Subversion est d'abord
        un ensemble de bibliothèques en langage C, avec des fichiers
-      d'en-têtes (<filename>.h</filename>) situés dans le répertoire
+      d'en-têtes (<filename>.h</filename>) situés dans le répertoire
        <filename>subversion/include</filename> de l'arborescence des
        sources. Ces en-têtes sont copiés dans votre arborescence système
        (par exemple <filename>/usr/local/include</filename>)
@@ -788,17 +792,17 @@
        et les fonctions ont un espace de nommage réservé. Cela veut dire
        que tous les noms de symboles Subversion publics commencent par
        <literal>svn_</literal>, suivi d'un code indiquant la bibliothèque
-      dans laquelle le symbole est défini (par exemple
-      <literal>wc</literal>, <literal>client</literal>,
-      <literal>fs</literal>, etc.), suivi d'un unique caractère souligné
-      (<literal>_</literal>) puis du reste du nom du symbole. Les
+      dans laquelle le symbole est défini (par exemple
+      <literal>wc</literal>, <literal>client</literal>,
+      <literal>fs</literal>, etc.), suivi d'un unique caractère
+      souligné (<literal>_</literal>) puis du reste du nom du symbole. Les
        fonctions semi-publiques (utilisées par plusieurs fichiers au sein
        d'une bibliothèque mais pas par du code extérieur à cette
        bibliothèque, on peut les trouver au sein des répertoires de la
        bibliothèque) suivent une règle de nommage légèrement différente
        dans le sens où, au lieu d'un unique caractère souligné
        après le code indiquant la bibliothèque, elles utilisent deux
-      caractères souligné consécutifs (<literal>_ _</literal>).
+      caractères souligné consécutifs (<literal>_ _</literal>).
        Les fonctions qui sont propres à un fichier source (c'est-à-dire
        privées) n'ont pas de préfixe particulier et sont déclarées avec
        le mot-clé <literal>static</literal>. Bien sûr, un compilateur n'a
@@ -814,7 +818,7 @@
        en anglais). Ce document contient des informations
        particulièrement utiles qui, bien que destinées aux développeurs
        (ou aux personnes désireuses de le devenir) de Subversion
-      lui-même, peuvent également s'appliquer à tous ceux qui
+      lui-même, peuvent également servir à tous ceux qui
        développent des applications utilisant Subversion comme
        bibliothèque tierce
        <footnote>
@@ -828,12 +832,13 @@
        <title>APR, la bibliothèque Apache de portabilité des  
exécutables</title>

        <para>À côté des types de données propres à Subversion, vous
-        pouvez voir de nombreuses références à des types de données qui
-        commencent par <literal>apr_</literal> — ce sont les
+        trouverez de nombreuses références à des types de données qui
+        commencent par <literal>apr_</literal> : ce sont les
          symboles de la bibliothèque pour la portabilité d'Apache
-        (Apache Portable Runtime en anglais, soit APR). APR est un jeu
-        de bibliothèques Apache, originellement extraites du code source
-        du serveur pour essayer de séparer ce qui dépendait du système
+        (<foreignphrase>Apache Portable Runtime</foreignphrase> en
+        anglais, soit APR). APR est un jeu de bibliothèques Apache,
+        originellement extraites du code source du serveur
+        pour essayer de séparer ce qui dépendait du système
          d'exploitation de ce qui n'en dépendait pas. Au final, on
          obtient une bibliothèque qui fournit une API permettant
          d'effectuer des opérations qui changent un peu (ou beaucoup) en
@@ -860,10 +865,11 @@
          données et le type de données APR le plus utilisé, que l'on
          retrouve dans presque tous les prototypes de l'API Subversion,
          est <literal>apr_pool_t</literal> — le réservoir de
-        mémoire ("memory pool" en anglais) APR. Subversion utilise les
-        réservoirs de mémoire en interne pour tous ses besoins
-        d'allocation mémoire (à moins qu'une bibliothèque externe ne
-        requiert un autre mécanisme de gestion de la mémoire pour les
+        mémoire (<foreignphrase>memory pool</foreignphrase> en anglais)
+        APR. Subversion utilise les réservoirs de mémoire
+        en interne pour tous ses besoins d'allocation mémoire
+        (à moins qu'une bibliothèque externe ne requière
+        un autre mécanisme de gestion de la mémoire pour les
          données transmises via son API)
          <footnote>
            <para>Neon et Berkeley DB par exemple.</para>
@@ -898,7 +904,7 @@
            particulièrement pointues de votre programme. Des langages
            tels que Java ou Python utilisent un
            <firstterm>ramasse-miettes</firstterm>
-          (<firstterm>garbage collector</firstterm> en anglais)
+          (<foreignphrase>garbage collector</foreignphrase> en anglais)
            qui alloue de la mémoire aux objets en cas de besoin et la
            libère automatiquement quand l'objet n'est plus utilisé.</para>

@@ -926,25 +932,25 @@

      <!-- ===============================================================  
-->
      <sect2 id="svn.developer.usingapi.urlpath">
-      <title>Pré-requis pour les URL et les chemins</title>
+      <title>Prérequis pour les URL et les chemins</title>

        <para>Subversion a été conçu pour effectuer à distance des
-        opérations de suivi de versions. À ce titre, les possibilités
+        opérations de gestion de versions. À ce titre, les possibilités
          d'internationalisation (i18n) ont fait l'objet d'une attention
          toute particulière. Après tout, <quote>à distance</quote> peut
          vouloir dire depuis un ordinateur situé <quote>dans le même
-        bureau</quote> mais aussi <quote>à l'autre bout de la
+        bureau</quote>, mais aussi <quote>à l'autre bout de la
          planète</quote>. Pour faciliter cette prise en compte, toutes
          les interfaces publiques de Subversion qui acceptent des chemins
          comme argument s'attendent à ce que ces chemins soient rendus
          canoniques — la façon la plus facile de le faire étant de
          les passer en argument à la fonction
-        <function>svn_path_canonicalize()</function> — et encodés
+        <function>svn_path_canonicalize()</function> — et codés
          dans le format UTF-8. Cela signifie, par exemple, que tout
          nouveau programme client qui pilote l'interface
          <filename>libsvn_client</filename> doit d'abord convertir les
          chemins depuis le codage local vers UTF-8 avant de fournir ces
-        chemins à la bibliothèque Subversion, puis de reconvertir tout
+        chemins à la bibliothèque Subversion, puis doit reconvertir tout
          chemin renvoyé par Subversion vers le codage local avant
          d'utiliser ce chemin à des fins externes à Subversion.
          Heureusement, Subversion fournit un ensemble de fonctions (voir
@@ -955,12 +961,12 @@
          passées en paramètres respectent le format URI. Ainsi, au lieu
          de désigner par <uri>file:///home/utilisateur/Mon fichier.txt</uri>
          l'URL d'un fichier nommé <filename>Mon fichier.txt</filename>
-        dans le répertoire <filename>home/utilisateur</filename>, vous
-        devez utiliser
+        situé dans le répertoire <filename>home/utilisateur</filename>,
+        vous devez utiliser
          <uri>file:///home/utilisateur/Mon%20fichier.txt</uri>. Là
          encore, Subversion fournit des fonctions utiles à votre
          application — <function>svn_path_uri_encode()</function>
-        et <function>svn_path_uri_decode()</function> pour encoder et
+        et <function>svn_path_uri_decode()</function> pour coder et
          décoder, respectivement, des URI.</para> </sect2>

      <!-- ===============================================================  
-->
@@ -971,9 +977,10 @@
          partir d'un autre langage que le C (par exemple un programme
          Python ou Perl), Subversion offre cette possibilité via le
          générateur simplifié d'interface et d'encapsulation
-        (<quote>Simplified Wrapper and Interface Generator</quote> ou
-        SWIG en anglais). Les interfaces SWIG de Subversion sont situées
-        dans le répertoire <filename>subversion/bindings/swig</filename>.
+        (<foreignphrase>Simplified Wrapper and Interface
+        Generator</foreignphrase> ou SWIG en anglais).
+        Les interfaces SWIG de Subversion sont situées
+        dans le répertoire <filename>subversion/bindings/swig</filename>.
          Elles sont toujours en cours d'évolution mais sont utilisables.
          Elles vous permettent d'appeler les fonctions de l'API
          Subversion indirectement, en utilisant des interfaces qui
@@ -1006,7 +1013,7 @@

        <para>Les interfaces Subversion vers les langages de programmation
          ne sont pas suivies avec le même niveau d'exigence que les
-        modules du cœur de Subversion mais peuvent généralement être
+        modules du cœur de Subversion, mais peuvent généralement être
          utilisées en production. De nombreuses applications, de nombreux
          scripts, des clients graphiques alternatifs et des outils
          tiers utilisent aujourd'hui sans problème les interfaces vers
@@ -1065,11 +1072,11 @@
            compatible avec le format de fichier de l'implémentation
            native de cette bibliothèque.</para>

-        <para>Ceci dit, SVNKit est unaninement reconnu pour sa
+        <para>Ceci dit, SVNKit est unanimement reconnu pour sa
            fiabilité. Et une solution 100 % Java est beaucoup plus
-          robuste vis-à-vis des erreurs de programmation — un
-          bogue dans SVNKit génére une exception Java que vous pouvez
-          intercepter tandis qu'un bogue dans une bibliothèque du cœur
+          robuste vis-à-vis des erreurs de programmation : un
+          bogue dans SVNKit génère une exception Java que vous pouvez
+          intercepter, tandis qu'un bogue dans une bibliothèque du cœur
            de Subversion utilisée par javahl peut mettre par terre tout
            votre environnement d'exécution Java. En conclusion, pesez le
            pour et le contre avant de choisir une implémentation en Java
@@ -1093,7 +1100,7 @@
          pouvez y observer l'utilisation du réservoir de mémoire APR qui
          est utilisé pour les besoins d'allocation mémoire. En outre, le
          code révèle le côté obscur de la gestion des erreurs de
-        Subversion — toutes les erreurs Subversion doivent être
+        Subversion : toutes les erreurs Subversion doivent être
          explicitement prises en compte pour éviter des fuites de mémoire
          (et dans certains cas, le plantage de l'application).</para>

@@ -1197,7 +1204,7 @@
      }
    else
      {
-      /* Une autre erreur s'est produite.  Affiche un message d'erreur.
+      /* Une autre erreur s'est produite. Affiche un message d'erreur.
         */
        printf("Une erreur s'est produite lors de l'ajout du "
               "répertoire '%s' au dépôt '%s'.\n",
@@ -1218,7 +1225,7 @@
          votre dépôt Subversion effectue automatiquement certaines tâches
          externes à Subversion chaque fois qu'une transaction est
          propagée (par exemple envoyer un mail qui décrit les changements
-        effectués dans la transaction vers la liste de diffusion des
+        effectués dans la transaction à la liste de diffusion des
          développeurs), vous devez utiliser la version de la fonction
          encapsulée dans <filename>libsvn_repos</filename> qui ajoute la
          fonctionnalité d'activation des procédures automatiques :
@@ -1270,7 +1277,7 @@
          if svn.fs.svn_fs_is_dir(racine, chemin_complet):
              parcourir_rep_systemedefichiers(racine, chemin_complet)
          else:
-            # Sinon, c'est un fichier donc l'afficher maintenant
+            # Sinon, c'est un fichier donc l'afficher maintenant.
              print chemin_complet

  def parcourir_la_plus_recente_revision(chemin_depot):
@@ -1299,7 +1306,7 @@
                           % (os.path.basename(sys.argv[0])))
          sys.exit(1)

-    # transforme la chaine en chemin canonique.
+    # Transforme la chaîne en chemin canonique.
      chemin_depot = svn.core.svn_path_canonicalize(sys.argv[1])

      # Et c'est parti !
@@ -1336,13 +1343,13 @@
          commande <command>svn status</command>.</para>

        <example id="svn.developer.usingapi.otherlangs.ex-2">
-        <title>Une version en Python de status</title>
+        <title>Une version de status en Python</title>

          <programlisting>
  #!/usr/bin/env python

  """Parcourir un répertoire d'une copie de travail en affichant les
-informations d etat."""
+informations d'état."""

  import sys
  import os.path
@@ -1378,7 +1385,7 @@
          """Une fonction de renvoi ("callback") pour svn_client_status."""

          # Affiche le chemin, moins la partie déjà présente
-        # dans la racine du parcours
+        # dans la racine du parcours.
          text_status = generer_code_etat(etat.text_status)
          prop_status = generer_code_etat(etat.prop_status)
          print '%s%s  %s' % (text_status, prop_status, path)
@@ -1398,7 +1405,7 @@
      stream.write("""Usage: %s OPTIONS CHEMIN_COPIE_TRAVAIL
  Options:
    --help, -h    : Affiche ce message d'aide.
-  --verbose, -v : Affiche les états de tous les objets, sans exception
+  --verbose, -v : Affiche l'état de tous les objets, sans exception.
  """ % (os.path.basename(sys.argv[0])))
      sys.exit(code_erreur)

@@ -1436,11 +1443,11 @@
          de <function>svn_client_ctx_t()</function> est un peu trompeur
          parce que l'API publique de Subversion ne possède pas de telle
          fonction — la génération automatique de fonctions de SWIG
-        est à la peine (cette fonction est une sorte d'usine à fonctions
-        pour transformer des structures C complexes vers un équivalent
-        en Python). Notez également que le chemin passé au programme
-        (comme le dernier) est mouliné par
-        <function>svn_path_canonicalize()</function>, car,
+        ( une sorte d'usine à fonctions pour transformer des structures
+        C complexes vers un équivalent en Python) est à la peine.
+        Notez également que le chemin passé au programme
+        (tout comme dans le programme précédent) est mouliné par
+        <function>svn_path_canonicalize()</function> car,
          <emphasis>dans le cas contraire</emphasis>, on s'expose à un
          arrêt rapide et brutal du programme par la bibliothèque C
          Subversion sous-jacente qui effectue des tests de
@@ -1461,7 +1468,7 @@
        modulaire et fournir une API publique stable de manière à ce que
        des développeurs tiers — tel que vous, peut-être —
        puissent écrire des logiciels qui pilotent les fonctionnalités du
-      coeur de Subversion.</para>
+      cœur de Subversion.</para>

      <para>Dans ce chapitre, nous avons approfondi notre vision de
        l'architecture de Subversion, examiné ses couches logiques et
@@ -1469,7 +1476,7 @@
        couches de Subversion pour communiquer entre elles. De nombreux
        développeurs ont imaginé des utilisations intéressantes de l'API
        Subversion, de la simple procédure automatique jusqu'à des
-      systèmes de suivi de versions complètement différents, en passant
+      systèmes de gestion de versions complètement différents, en passant
        par l'intégration de Subversion dans d'autres applications. Et
        <emphasis>vous</emphasis>, quelle utilisation originale en
        tirerez-vous ?</para>


More information about the svnbook-dev mailing list