hgbook
diff fr/ch06-collab.xml @ 1010:cd06c45e1631
French translation : ch06-collab.xml - about 50% translated
author | Frédéric Bouquet <youshe.jaalon@gmail.com> |
---|---|
date | Mon Sep 21 00:02:10 2009 +0200 (2009-09-21) |
parents | 304c6a1758ae |
children | 746a888fb41b |
line diff
1.1 --- a/fr/ch06-collab.xml Sun Sep 20 13:09:33 2009 +0200 1.2 +++ b/fr/ch06-collab.xml Mon Sep 21 00:02:10 2009 +0200 1.3 @@ -442,317 +442,326 @@ 1.4 ahurissant. Et pourtant, Linux est un bout de logiciel d'une grande 1.5 réussite et bien considéré.</para> 1.6 </sect2> 1.7 -<!-- TODO : part 1/4 --> 1.8 + 1.9 <sect2> 1.10 <title>Collaboration pull seulement versus pull partagé</title> 1.11 1.12 - <para id="x_476">A perpetual source of heat in the open source community is 1.13 - whether a development model in which people only ever pull 1.14 - changes from others is <quote>better than</quote> one in which 1.15 - multiple people can push changes to a shared 1.16 - repository.</para> 1.17 - 1.18 - <para id="x_477">Typically, the backers of the shared-push model use tools 1.19 - that actively enforce this approach. If you're using a 1.20 - centralised revision control tool such as Subversion, there's 1.21 - no way to make a choice over which model you'll use: the tool 1.22 - gives you shared-push, and if you want to do anything else, 1.23 - you'll have to roll your own approach on top (such as applying 1.24 - a patch by hand).</para> 1.25 - 1.26 - <para id="x_478">A good distributed revision control tool will 1.27 - support both models. You and your collaborators can then 1.28 - structure how you work together based on your own needs and 1.29 - preferences, not on what contortions your tools force you 1.30 - into.</para> 1.31 - </sect2> 1.32 - <sect2> 1.33 - <title>Where collaboration meets branch management</title> 1.34 - 1.35 - <para id="x_479">Once you and your team set up some shared 1.36 - repositories and start propagating changes back and forth 1.37 - between local and shared repos, you begin to face a related, 1.38 - but slightly different challenge: that of managing the 1.39 - multiple directions in which your team may be moving at once. 1.40 - Even though this subject is intimately related to how your 1.41 - team collaborates, it's dense enough to merit treatment of its 1.42 - own, in <xref linkend="chap:branch"/>.</para> 1.43 + <para id="x_476">Une source perpétuelle de heurs dans une communauté 1.44 + opensource est si un modèle de développement est celui où les 1.45 + personnes ne peuvent que récupérer (pull) les changements ou l'autre 1.46 + <quote>meilleur</quote> dans lequel de multiples personnes peuvent 1.47 + envoyer (push) leurs changements vers un dépôt partagé.</para> 1.48 + 1.49 + <para id="x_477">Typiquement, les bailleurs de fonds du modèle push 1.50 + partagé utilisent des outils qui renforcent activement cette 1.51 + approche. Si vous utilisez un outil centralisé de gestion de révision 1.52 + comme Subversion, il n'y a pas la possibilité de choisir quel modèle 1.53 + utiliser : l'outil vous fournit un push partagé, et si vous voulez 1.54 + faire quelque chose d'autre, vous avez à changer votre propre 1.55 + approche à la base (comme appliquer les patchs manuellement).</para> 1.56 + 1.57 + <para id="x_478">Un bon outil de gestion distribuée de révisions doit 1.58 + supporter les deux modèles. Vous et vos collaborateurs pouvez ensuite 1.59 + structurer la façon dont vous travaillez ensemble en vous basant sur 1.60 + vos besoins et vos préférences, et non sur les contortions que vos 1.61 + outils vous forcent à effectuer.</para> 1.62 + </sect2> 1.63 + <sect2> 1.64 + <title>Lorsque la collaboration rencontre la gestion de branches</title> 1.65 + 1.66 + <para id="x_479">Lorsque vous et votre équipe configurez des dépôts 1.67 + partagés et commencez à propager vos changement dans tous les sens 1.68 + entre les dépôts locaux et partagés, vous commencez à être face à un 1.69 + challenge apparenté, mais un peu différent : celui de gérer les 1.70 + multiples directions vers lesquelles votre équipe pourrait aller au 1.71 + même moment. Même si ce sujet est intimement lié à la façon dont 1.72 + votre équipe collabore, il est suffisement dence pour mériter un 1.73 + traitement à part dans <xref linkend="chap:branch"/>.</para> 1.74 </sect2> 1.75 </sect1> 1.76 1.77 <sect1> 1.78 - <title>The technical side of sharing</title> 1.79 - 1.80 - <para id="x_47a">The remainder of this chapter is devoted to the question of 1.81 - sharing changes with your collaborators.</para> 1.82 + <title>Le coté technique du partage</title> 1.83 + 1.84 + <para id="x_47a">Le reste de ce chapitre est dévoué à la question du 1.85 + partage des changements avec vos collaborateurs.</para> 1.86 </sect1> 1.87 1.88 <sect1 id="sec:collab:serve"> 1.89 - <title>Informal sharing with <command role="hg-cmd">hg 1.90 - serve</command></title> 1.91 - 1.92 - <para id="x_47b">Mercurial's <command role="hg-cmd">hg serve</command> 1.93 - command is wonderfully suited to small, tight-knit, and 1.94 - fast-paced group environments. It also provides a great way to 1.95 - get a feel for using Mercurial commands over a network.</para> 1.96 - 1.97 - <para id="x_47c">Run <command role="hg-cmd">hg serve</command> inside a 1.98 - repository, and in under a second it will bring up a specialised 1.99 - HTTP server; this will accept connections from any client, and 1.100 - serve up data for that repository until you terminate it. 1.101 - Anyone who knows the URL of the server you just started, and can 1.102 - talk to your computer over the network, can then use a web 1.103 - browser or Mercurial to read data from that repository. A URL 1.104 - for a <command role="hg-cmd">hg serve</command> instance running 1.105 - on a laptop is likely to look something like 1.106 + <title>Partage informel avec <command role="hg-cmd">hg 1.107 + serve</command></title> 1.108 + 1.109 + <para id="x_47b">La commande <command role="hg-cmd">hg serve</command> de 1.110 + Mercurial est magnifiquement conçue pour un environnement de petit 1.111 + groupe, soudé et rapide. Elle fournit aussi un très bon moyen d'avoir 1.112 + un sentiment de l'utilisation des commandes Meruciral sur un 1.113 + réseau.</para> 1.114 + 1.115 + <para id="x_47c">Exécutez <command role="hg-cmd">hg serve</command> à 1.116 + l'intérieur d'un dépôtn et en moins d'une seconde, cela mettra en place 1.117 + un serveur HTTP spécialisé ; qui va accepter les connexions de tout 1.118 + client, et servir les donnée pour ce dépôt jusqu'à ce que vous le 1.119 + terminiez. Toute personne qui connaît l'URL du serveur que vous venez 1.120 + de démarrer, peut ensuite utiliser un navigateur web ou Mercurial pour 1.121 + lire les données de ce dépôt. Une URL pour une instance exécutée de 1.122 + <command role="hg-cmd">hg serve</command> sur un ordinateur portable 1.123 + ressemblera vraissemblablement à 1.124 <literal>http://my-laptop.local:8000/</literal>.</para> 1.125 1.126 - <para id="x_47d">The <command role="hg-cmd">hg serve</command> command is 1.127 - <emphasis>not</emphasis> a general-purpose web server. It can do 1.128 - only two things:</para> 1.129 + <para id="x_47d">La commande <command role="hg-cmd">hg serve</command> 1.130 + <emphasis>n'</emphasis>est <emphasis>pas</emphasis> un serveur web 1.131 + générique. Il ne peut faire que deux choses : </para> 1.132 <itemizedlist> 1.133 - <listitem><para id="x_47e">Allow people to browse the history of the 1.134 - repository it's serving, from their normal web 1.135 - browsers.</para> 1.136 + <listitem><para id="x_47e">Autoriser les personnes à explorer 1.137 + l'historique du dépôt qu'il rend accessible, à partir d'un 1.138 + navigateur web normal.</para> 1.139 </listitem> 1.140 - <listitem><para id="x_47f">Speak Mercurial's wire protocol, so that people 1.141 - can <command role="hg-cmd">hg clone</command> or <command 1.142 - role="hg-cmd">hg pull</command> changes from that 1.143 - repository.</para> 1.144 + <listitem><para id="x_47f">Discuter à travers le protocole de 1.145 + communication de Mercurial, ainsi, les personnes peuvent exécuter <command 1.146 + role="hg-cmd">hg clone</command> ou <command role="hg-cmd">hg 1.147 + pull</command> sur les changements de ce dépôt.</para> 1.148 </listitem></itemizedlist> 1.149 - <para id="x_480">In particular, <command role="hg-cmd">hg serve</command> 1.150 - won't allow remote users to <emphasis>modify</emphasis> your 1.151 - repository. It's intended for read-only use.</para> 1.152 - 1.153 - <para id="x_481">If you're getting started with Mercurial, there's nothing to 1.154 - prevent you from using <command role="hg-cmd">hg serve</command> 1.155 - to serve up a repository on your own computer, then use commands 1.156 - like <command role="hg-cmd">hg clone</command>, <command 1.157 - role="hg-cmd">hg incoming</command>, and so on to talk to that 1.158 - server as if the repository was hosted remotely. This can help 1.159 - you to quickly get acquainted with using commands on 1.160 - network-hosted repositories.</para> 1.161 - 1.162 - <sect2> 1.163 - <title>A few things to keep in mind</title> 1.164 - 1.165 - <para id="x_482">Because it provides unauthenticated read access to all 1.166 - clients, you should only use <command role="hg-cmd">hg 1.167 - serve</command> in an environment where you either don't 1.168 - care, or have complete control over, who can access your 1.169 - network and pull data from your repository.</para> 1.170 - 1.171 - <para id="x_483">The <command role="hg-cmd">hg serve</command> command 1.172 - knows nothing about any firewall software you might have 1.173 - installed on your system or network. It cannot detect or 1.174 - control your firewall software. If other people are unable to 1.175 - talk to a running <command role="hg-cmd">hg serve</command> 1.176 - instance, the second thing you should do 1.177 - (<emphasis>after</emphasis> you make sure that they're using 1.178 - the correct URL) is check your firewall configuration.</para> 1.179 - 1.180 - <para id="x_484">By default, <command role="hg-cmd">hg serve</command> 1.181 - listens for incoming connections on port 8000. If another 1.182 - process is already listening on the port you want to use, you 1.183 - can specify a different port to listen on using the <option 1.184 - role="hg-opt-serve">-p</option> option.</para> 1.185 - 1.186 - <para id="x_485">Normally, when <command role="hg-cmd">hg serve</command> 1.187 - starts, it prints no output, which can be a bit unnerving. If 1.188 - you'd like to confirm that it is indeed running correctly, and 1.189 - find out what URL you should send to your collaborators, start 1.190 - it with the <option role="hg-opt-global">-v</option> 1.191 - option.</para> 1.192 + <para id="x_480">En particulier, <command role="hg-cmd">hg serve</command> 1.193 + ne permettra pas aux utilisateurs distants de 1.194 + <emphasis>modifier</emphasis> votre dépôt. C'est destiné à une 1.195 + utilisation en lecture seule.</para> 1.196 + 1.197 + <para id="x_481">Si vous commencez avec Mercurial, il n'y a rien qui vous 1.198 + empèche d'utiliser <command role="hg-cmd">hg serve</command> pour 1.199 + publier un dépôt sur votre ordinateur, utilisez ensuite des commandes 1.200 + telles que <command role="hg-cmd">hg clone</command>, <command 1.201 + role="hg-cmd">hg incoming</command>, et ainsi de suite pour parler à 1.202 + ce serveur comme si ce dépôt était hébergé à distance. Ceci peut vous 1.203 + aider à rapidement familiarisé avec les commandes sur les dépôts 1.204 + hébergés sur un réseau.</para> 1.205 + 1.206 + <sect2> 1.207 + <title>Quelques choses à garder à l'esprit</title> 1.208 + 1.209 + <para id="x_482">Puisque ceci fournit un accès en lecture sans 1.210 + authentification à tous les clients, vous devriez utiliser la 1.211 + commande <command role="hg-cmd">hg serve</command> dans un 1.212 + environnement dans lequel vous ne vous inquiétez pas ou où vous avez 1.213 + tout contrôle sur qui peut avoir accès au réseau et récupérer les 1.214 + données de votre dépôt.</para> 1.215 + 1.216 + <para id="x_483">La commande <command role="hg-cmd">hg serve</command> 1.217 + ne connaît sait rien sur un quelconque firewall que vous auriez 1.218 + installé sur votre système ou réseau. Elle ne peut pas détecter ou 1.219 + contrôler votre logiciel de pare-feu. Si d'autre personnes ont la 1.220 + possibilité de dialoguer avec une instance de <command 1.221 + role="hg-cmd">hg serve</command> ma seconde chose que vous devriez 1.222 + faire (<emphasis>après</emphasis> être sûr qu'ils utilisent l'URL 1.223 + correcte) est de vérifier la configuration de votre firewall.</para> 1.224 + 1.225 + <para id="x_484">Par défaut, <command role="hg-cmd">hg serve</command> 1.226 + écoute pour les connexions entrantes sur le port 8000. Si un autre 1.227 + processus est déjà en train d'écouter sur le port que vous voulez 1.228 + écouter, vous pouvez spécifier un port différent sur lequel écouter à 1.229 + l'aide de l'option <option role="hg-opt-serve">-p</option>.</para> 1.230 + 1.231 + <para id="x_485">Normalement, lorsque <command role="hg-cmd">hg 1.232 + serve</command> se lance, il n'affiche aucune sortie, ce qui peut 1.233 + être un peu énervant. Si vous voulez une confirmation que tout s'est 1.234 + déroulé correctement, et connaître l'URL que vous devriez fournir à 1.235 + vos collaborateurs, démarrez avec l'option <option 1.236 + role="hg-opt-global">-v</option>.</para> 1.237 </sect2> 1.238 </sect1> 1.239 1.240 <sect1 id="sec:collab:ssh"> 1.241 - <title>Using the Secure Shell (ssh) protocol</title> 1.242 - 1.243 - <para id="x_486">You can pull and push changes securely over a network 1.244 - connection using the Secure Shell (<literal>ssh</literal>) 1.245 - protocol. To use this successfully, you may have to do a little 1.246 - bit of configuration on the client or server sides.</para> 1.247 - 1.248 - <para id="x_487">If you're not familiar with ssh, it's the name of 1.249 - both a command and a network protocol that let you securely 1.250 - communicate with another computer. To use it with Mercurial, 1.251 - you'll be setting up one or more user accounts on a server so 1.252 - that remote users can log in and execute commands.</para> 1.253 - 1.254 - <para id="x_488">(If you <emphasis>are</emphasis> familiar with ssh, you'll 1.255 - probably find some of the material that follows to be elementary 1.256 - in nature.)</para> 1.257 - 1.258 - <sect2> 1.259 - <title>How to read and write ssh URLs</title> 1.260 - 1.261 - <para id="x_489">An ssh URL tends to look like this:</para> 1.262 + <title>Utiliser le protocole Secure Shell (ssh)</title> 1.263 + 1.264 + <para id="x_486">Vous pouvez récupérer (pull) ou envoyer (push) des 1.265 + changements de façon sécurisé au dessus d'une connexion utilisatnt le 1.266 + protocole Secure Shell (<literal>ssh</literal>). Pour l'utiliser avec 1.267 + succès, vous pouriez avoir à faire un peu de configuration du coté 1.268 + client ou serveur.</para> 1.269 + 1.270 + <para id="x_487">Si vous n'êtes pas familiers avec ssh, c'est le nom de 1.271 + la commande et d'un protocole réseau qui vous permet d'établir une 1.272 + communication sécurisée avec un autre ordinateur. Pour l'utiliser avec 1.273 + Mercurial, vous allez configurer un ou plusieurs comptes utilisateur 1.274 + sur un serveur, comme ça, les utilisateurs distants peuvent logger et 1.275 + exécuter les commandes.</para> 1.276 + 1.277 + <para id="x_488">(Si vous <emphasis>êtes</emphasis> familiers avec ssh, 1.278 + vous allez probablement trouver quelques une des informations qui 1.279 + suivent élémentaires par nature.)</para> 1.280 + 1.281 + <sect2> 1.282 + <title>Comment lire et écrire des URLs ssh</title> 1.283 + 1.284 + <para id="x_489">Une URL ssh tent à ressembler à ceci :</para> 1.285 <programlisting>ssh://bos@hg.serpentine.com:22/hg/hgbook</programlisting> 1.286 <orderedlist> 1.287 - <listitem><para id="x_48a">The <quote><literal>ssh://</literal></quote> 1.288 - part tells Mercurial to use the ssh protocol.</para> 1.289 - </listitem> 1.290 - <listitem><para id="x_48b">The <quote><literal>bos@</literal></quote> 1.291 - component indicates what username to log into the server 1.292 - as. You can leave this out if the remote username is the 1.293 - same as your local username.</para> 1.294 - </listitem> 1.295 - <listitem><para id="x_48c">The 1.296 - <quote><literal>hg.serpentine.com</literal></quote> gives 1.297 - the hostname of the server to log into.</para> 1.298 - </listitem> 1.299 - <listitem><para id="x_48d">The <quote>:22</quote> identifies the port 1.300 - number to connect to the server on. The default port is 1.301 - 22, so you only need to specify a colon and port number if 1.302 - you're <emphasis>not</emphasis> using port 22.</para> 1.303 - </listitem> 1.304 - <listitem><para id="x_48e">The remainder of the URL is the local path to 1.305 - the repository on the server.</para> 1.306 - </listitem></orderedlist> 1.307 - 1.308 - <para id="x_48f">There's plenty of scope for confusion with the path 1.309 - component of ssh URLs, as there is no standard way for tools 1.310 - to interpret it. Some programs behave differently than others 1.311 - when dealing with these paths. This isn't an ideal situation, 1.312 - but it's unlikely to change. Please read the following 1.313 - paragraphs carefully.</para> 1.314 - 1.315 - <para id="x_490">Mercurial treats the path to a repository on the server as 1.316 - relative to the remote user's home directory. For example, if 1.317 - user <literal>foo</literal> on the server has a home directory 1.318 - of <filename class="directory">/home/foo</filename>, then an 1.319 - ssh URL that contains a path component of <filename 1.320 - class="directory">bar</filename> <emphasis>really</emphasis> 1.321 - refers to the directory <filename 1.322 - class="directory">/home/foo/bar</filename>.</para> 1.323 - 1.324 - <para id="x_491">If you want to specify a path relative to another user's 1.325 - home directory, you can use a path that starts with a tilde 1.326 - character followed by the user's name (let's call them 1.327 - <literal>otheruser</literal>), like this.</para> 1.328 + <listitem><para id="x_48a">Le préfixe 1.329 + <quote><literal>ssh://</literal></quote> dit à Mercurial 1.330 + d'utiliser le protocole ssh.</para> 1.331 + </listitem> 1.332 + <listitem><para id="x_48b">Le composant 1.333 + <quote><literal>bos@</literal></quote> indique que le nom 1.334 + d'utilisateur à logger sur le serveur. Vous pouvez le laisser 1.335 + vide si le nom d'utilisateur sur le serveur distant est le même 1.336 + que localement.</para> 1.337 + </listitem> 1.338 + <listitem><para id="x_48c">La partie 1.339 + <quote><literal>hg.serpentine.com</literal></quote> donne le nom 1.340 + d'hôte du serveur sur lequel se logger.</para> 1.341 + </listitem> 1.342 + <listitem><para id="x_48d">Le <quote>:22</quote> identifie le numéro 1.343 + de port où se connecter au serveur. Le port par défaut est 22, 1.344 + donc vous n'avez besoin de spécifier ceci que si vous 1.345 + <emphasis>n'</emphasis>utilisez <emphasis>pas</emphasis> le port 1.346 + 22.</para> 1.347 + </listitem> 1.348 + <listitem><para id="x_48e">Le reste de l'URL est le chemin local du 1.349 + dépôt sur le serveur.</para></listitem></orderedlist> 1.350 + 1.351 + <para id="x_48f">Il y a beaucoup de place pour la confusion sur le 1.352 + chemin du composant d'une URL ssh puisqu'il n'y a pas de façon 1.353 + standard pour les outils de l'intérpréter. Certains programmes se 1.354 + comportent différemment des autres lorsqu'ils traient ces chemins. Il 1.355 + ne s'agit pas d'une situation idéale, mais ce n'est pas prêt de 1.356 + changer. Lisez SVP les prochains paragraphes avec attention.</para> 1.357 + 1.358 + <para id="x_490">Mercurial traite le chemin vers un dépôt sur le 1.359 + serveur comme relatif au répertoire personnel de l'utilisateur sur le 1.360 + serveur distant. Par exemple, si un utilisateur 1.361 + <literal>foo</literal> sur le serveur a un répertoire personnel 1.362 + <filename class="directory">/home/foo</filename>, alors l'URL ssh qui 1.363 + vientient un composant chemin de <filename 1.364 + class="directory">bar</filename> réfère en 1.365 + <emphasis>réalité</emphasis> au répertoire <filename 1.366 + class="directory">/home/foo/bar</filename>.</para> 1.367 + 1.368 + <para id="x_491">Si vous voulez spécifier un chemin relatif à au 1.369 + répertoire personnel d'un autre utilisateur, vous pouvez préciser un 1.370 + chemin qui commence à l'aide du caractère tilde suivit du nom de 1.371 + l'utilisateur (appelons le <literal>otheruser</literal>), 1.372 + ainsi.</para> 1.373 <programlisting>ssh://server/~otheruser/hg/repo</programlisting> 1.374 1.375 - <para id="x_492">And if you really want to specify an 1.376 - <emphasis>absolute</emphasis> path on the server, begin the 1.377 - path component with two slashes, as in this example.</para> 1.378 + <para id="x_492">Et si vous voulez vraiment spécifier un chemin 1.379 + <emphasis>absolu</emphasis> sur le serveur, débutez la composante 1.380 + chemin par deux slashs comme dans cet exemple.</para> 1.381 <programlisting>ssh://server//absolute/path</programlisting> 1.382 </sect2> 1.383 1.384 <sect2> 1.385 - <title>Finding an ssh client for your system</title> 1.386 - 1.387 - <para id="x_493">Almost every Unix-like system comes with OpenSSH 1.388 - preinstalled. If you're using such a system, run 1.389 - <literal>which ssh</literal> to find out if the 1.390 - <command>ssh</command> command is installed (it's usually in 1.391 - <filename class="directory">/usr/bin</filename>). In the 1.392 - unlikely event that it isn't present, take a look at your 1.393 - system documentation to figure out how to install it.</para> 1.394 - 1.395 - <para id="x_494">On Windows, the TortoiseHg package is bundled 1.396 - with a version of Simon Tatham's excellent 1.397 - <command>plink</command> command, and you should not need to 1.398 - do any further configuration.</para> 1.399 - </sect2> 1.400 - 1.401 - <sect2> 1.402 - <title>Generating a key pair</title> 1.403 - 1.404 - <para id="x_499">To avoid the need to repetitively type a 1.405 - password every time you need to use your ssh client, I 1.406 - recommend generating a key pair.</para> 1.407 + <title>Trouver un client ssh pour votre système</title> 1.408 + 1.409 + <para id="x_493">La plupart des systèmes du type Unix arrivent avec 1.410 + OpenSSH préinstallé. Si vous utilisez un tel système, utilisez 1.411 + <literal>which ssh</literal> pour trouver où la commande 1.412 + <command>ssh</command> est installée (il s'agit généralement de 1.413 + <filename class="directory">/usr/bin</filename>). Dans le cas peu 1.414 + probable où il ne serait pas présent, regarder à la documentation de 1.415 + votre système pour voir comment l'installer.</para> 1.416 + 1.417 + <para id="x_494">Sous Windows, le packetage ToirtoiseHg est livré avec 1.418 + une version de l'excellente commande <command>plink</command> de 1.419 + Simon Tatham's, et ne devrait pas avoir besoin de plus de 1.420 + configuration.</para> 1.421 + </sect2> 1.422 + 1.423 + <sect2> 1.424 + <title>Générer une paire de clef</title> 1.425 + 1.426 + <para id="x_499">Pour éviter d'avoir à chaque fois taper un mot de 1.427 + passe lorsque vous utilisez votre client ssh, je recommande le fait 1.428 + de générer une paire de clefs.</para> 1.429 1.430 <tip> 1.431 - <title>Key pairs are not mandatory</title> 1.432 - 1.433 - <para id="x_6a4">Mercurial knows nothing about ssh authentication or key 1.434 - pairs. You can, if you like, safely ignore this section and 1.435 - the one that follows until you grow tired of repeatedly 1.436 - typing ssh passwords.</para> 1.437 + <title>Les paires de clefs ne sont pas obligatoires</title> 1.438 + 1.439 + <para id="x_6a4">Mercurial ne sait rien du tout de l'authentification 1.440 + de ssh ou de la paire de clefs. Vous pouvez, si vous le désirez, 1.441 + ignorer sans risque cette section et ce qu'il suit jusqu'à ce que 1.442 + vous soyez fatigué de constament retaper des mots de passe 1.443 + ssh.</para> 1.444 </tip> 1.445 1.446 <itemizedlist> 1.447 - <listitem> 1.448 - <para id="x_6a5">On a Unix-like system, the 1.449 - <command>ssh-keygen</command> command will do the 1.450 - trick.</para> 1.451 - <para id="x_6a6">On Windows, if you're using TortoiseHg, you may need 1.452 - to download a command named <command>puttygen</command> 1.453 - from <ulink 1.454 - url="http://www.chiark.greenend.org.uk/~sgtatham/putty">the 1.455 - PuTTY web site</ulink> to generate a key pair. See 1.456 - <ulink 1.457 - url="http://the.earth.li/~sgtatham/putty/0.60/htmldoc/Chapter8.html#pubkey-puttygen">the 1.458 - <command>puttygen</command> documentation</ulink> for 1.459 - details of how use the command.</para> 1.460 - </listitem> 1.461 + <listitem> <para id="x_6a5">Sur un système de type Unix, la commande 1.462 + <command>ssh-keygen</command> fera l'affaire.</para></listitem> 1.463 + <listitem> <para id="x_6a6">Sous Windows, si vous utilisez 1.464 + ToirtoiseHg, vous devriez avoir besoin de télécharger la commande 1.465 + nommée <command>puttygen</command> à partir du <ulink 1.466 + url="http://www.chiark.greenend.org.uk/~sgtatham/putty">site 1.467 + web de PuTTY</ulink> pour générer une paire de clefs. Référez 1.468 + vous à <ulink 1.469 + url="http://the.earth.li/~sgtatham/putty/0.60/htmldoc/Chapter8.html#pubkey-puttygen">la 1.470 + documentation <command>puttygen</command></ulink> pour les 1.471 + détails sur l'utilisation de cette commande.</para></listitem> 1.472 </itemizedlist> 1.473 1.474 - <para id="x_49a">When you generate a key pair, it's usually 1.475 - <emphasis>highly</emphasis> advisable to protect it with a 1.476 - passphrase. (The only time that you might not want to do this 1.477 - is when you're using the ssh protocol for automated tasks on a 1.478 - secure network.)</para> 1.479 - 1.480 - <para id="x_49b">Simply generating a key pair isn't enough, however. 1.481 - You'll need to add the public key to the set of authorised 1.482 - keys for whatever user you're logging in remotely as. For 1.483 - servers using OpenSSH (the vast majority), this will mean 1.484 - adding the public key to a list in a file called <filename 1.485 - role="special">authorized_keys</filename> in their <filename 1.486 - role="special" class="directory">.ssh</filename> 1.487 - directory.</para> 1.488 - 1.489 - <para id="x_49c">On a Unix-like system, your public key will have a 1.490 - <filename>.pub</filename> extension. If you're using 1.491 - <command>puttygen</command> on Windows, you can save the 1.492 - public key to a file of your choosing, or paste it from the 1.493 - window it's displayed in straight into the <filename 1.494 - role="special">authorized_keys</filename> file.</para> 1.495 - </sect2> 1.496 - <sect2> 1.497 - <title>Using an authentication agent</title> 1.498 - 1.499 - <para id="x_49d">An authentication agent is a daemon that stores 1.500 - passphrases in memory (so it will forget passphrases if you 1.501 - log out and log back in again). An ssh client will notice if 1.502 - it's running, and query it for a passphrase. If there's no 1.503 - authentication agent running, or the agent doesn't store the 1.504 - necessary passphrase, you'll have to type your passphrase 1.505 - every time Mercurial tries to communicate with a server on 1.506 - your behalf (e.g. whenever you pull or push changes).</para> 1.507 - 1.508 - <para id="x_49e">The downside of storing passphrases in an agent is that 1.509 - it's possible for a well-prepared attacker to recover the 1.510 - plain text of your passphrases, in some cases even if your 1.511 - system has been power-cycled. You should make your own 1.512 - judgment as to whether this is an acceptable risk. It 1.513 - certainly saves a lot of repeated typing.</para> 1.514 + <para id="x_49a">Lorsque vous générez une paire de clefs, il est 1.515 + habituellement <emphasis>autement</emphasis> recommendé de la 1.516 + protéger avec un mot de passe. (Le seul moment où vous pourriez ne 1.517 + pas devoir le faire est lorsque vous utilisez le protocole ssh pour 1.518 + des tâches automatisées sur un réseau sécurisé.)</para> 1.519 + 1.520 + <para id="x_49b">Le simple fait de générer une paire de clefs n'est 1.521 + cependant pas suffisent. Vous aurez besoin d'ajouter la clef publique 1.522 + à l'ensemble des clefs authorisées pour tout utilisateur que vous 1.523 + utilisez pour vous connecter à distance. Pour les serveurs utilisant 1.524 + OpenSSh (la grande majorité), ceci voudra dire d'ajouter la clef 1.525 + publique à la liste dans un fichier appelé <filename 1.526 + role="special">authorized_keys</filename> dans leur répertoire 1.527 + <filename role="special" class="directory">.ssh</filename>.</para> 1.528 + 1.529 + <para id="x_49c">Sur un système de type Unix, votre clef publique aura 1.530 + l'extension <filename>.pub</filename>. Si vous utilisez la commande 1.531 + <command>puttygen</command> sous Windows, vous pouvez sauvegarder la 1.532 + clef publique dans un fichier que vous choisissez ou la copier à 1.533 + partir de la fenêtre qui apparait directement dans le fichier 1.534 + <filename role="special">authorized_keys</filename>.</para> 1.535 + </sect2> 1.536 + <sect2> 1.537 + <title>Utiliser un agent d'authentification</title> 1.538 + 1.539 + <para id="x_49d">Un agent d'authentification est un démon qui 1.540 + enregistre les mots de passe en mémoire (il oublira ainsi les mots de 1.541 + passe si vous vous déloggez et reloggez). Un client ssh sera averti 1.542 + si un tel agent est en fonctionnement, et lui demandera un mot de 1.543 + passe. S'il n'y a pas d'agent en fonctionnement, ou si l'agent ne 1.544 + connaît pas le mot de passe nécessaire, vous aurez à taper votre mot 1.545 + de passe chaque fois que Mercurial tente de communiquer avec un 1.546 + serveur en votre nom (ex. lorsque vous faite un pull ou un push sur 1.547 + des changements).</para> 1.548 + 1.549 + <para id="x_49e">L'inconveignant de sauvegarder les mots de passes dans 1.550 + un agent est qu'il est possible pour un attaquant bien préparé de 1.551 + retrouver le mot de passe clair, dans certains cas, même si votre 1.552 + système a été redémarré. Vous devriez vous faire votre propre 1.553 + jugement pour savoir si ce risque est acceptable. Ceci vous exempte 1.554 + certainement d'un tas de répétitions.</para> 1.555 1.556 <itemizedlist> 1.557 - <listitem> 1.558 - <para id="x_49f">On Unix-like systems, the agent is called 1.559 - <command>ssh-agent</command>, and it's often run 1.560 - automatically for you when you log in. You'll need to use 1.561 - the <command>ssh-add</command> command to add passphrases 1.562 - to the agent's store.</para> 1.563 - </listitem> 1.564 - <listitem> 1.565 - <para id="x_6a7">On Windows, if you're using TortoiseHg, the 1.566 - <command>pageant</command> command acts as the agent. As 1.567 - with <command>puttygen</command>, you'll need to <ulink 1.568 - url="http://www.chiark.greenend.org.uk/%7Esgtatham/putty/download.html">download 1.569 - <command>pageant</command></ulink> from the PuTTY web 1.570 - site and read <ulink 1.571 - url="http://the.earth.li/~sgtatham/putty/0.60/htmldoc/Chapter9.html#pageant">its 1.572 - documentation</ulink>. The <command>pageant</command> 1.573 - command adds an icon to your system tray that will let you 1.574 - manage stored passphrases.</para> 1.575 - </listitem> 1.576 + <listitem> <para id="x_49f">Sur les systèmes de type Unix, l'agent 1.577 + est appelé <command>ssh-agent</command>, et est souvent lancé 1.578 + automatiquement pour vous lorsque vous vous loggez. Vous aurez 1.579 + besoin d'utiliser la commande <command>ssh-add</command> pour 1.580 + ajouter des mots de passe à l'entrepôt de l'agent.</para> 1.581 + </listitem> 1.582 + <listitem> 1.583 + <para id="x_6a7">Sous Windows, si vous utilisez ToirtoiseHg, la 1.584 + commande <command>pageant</command> agit comme un agent. Comme 1.585 + avec <command>puttygen</command>, vous aurez besoin de <ulink 1.586 + url="http://www.chiark.greenend.org.uk/%7Esgtatham/putty/download.html">télécharger 1.587 + <command>pageant</command></ulink> à partir du site web de 1.588 + PuTTY et lire <ulink 1.589 + url="http://the.earth.li/~sgtatham/putty/0.60/htmldoc/Chapter9.html#pageant">sa 1.590 + documentation</ulink>. La commande <command>pageant</command> 1.591 + ajoute une icône à votre barre de tâches qui vous permettra de 1.592 + gérer les mots de passe stockés.</para></listitem> 1.593 + <!-- TODO : J'ai traduit system tray par barre des tâches, mais ne 1.594 + conaissant pas windows, je ne suis pas sûr du nom réel. A corriger 1.595 + le cas échéant ! --> 1.596 </itemizedlist> 1.597 </sect2> 1.598 - 1.599 +<!-- TODO : part 2/4 --> 1.600 <sect2> 1.601 <title>Configuring the server side properly</title> 1.602 1.603 @@ -806,7 +815,6 @@ 1.604 on (usually 22). Don't worry about more exotic possibilities 1.605 for misconfiguration until you've checked these two 1.606 first.</para> 1.607 -<!-- TODO : part 2/4 --> 1.608 <para id="x_4a7">If you're using an authentication agent on the client side 1.609 to store passphrases for your keys, you ought to be able to 1.610 log into the server without being prompted for a passphrase or