hgbook

changeset 710:8613844dd2cf

Update po files with source xml files
author Dongsheng Song <songdongsheng@live.cn>
date Sat Apr 18 10:09:11 2009 +0800 (2009-04-18)
parents 29f0f79cf614
children 364d2ce9e055
files po/zh.po
line diff
     1.1 --- a/po/zh.po	Thu Apr 16 23:46:45 2009 -0700
     1.2 +++ b/po/zh.po	Sat Apr 18 10:09:11 2009 +0800
     1.3 @@ -41,7 +41,7 @@
     1.4  msgid ""
     1.5  msgstr ""
     1.6  "Project-Id-Version: hgbook 1.2\n"
     1.7 -"POT-Creation-Date: 2009-04-05 11:48+0800\n"
     1.8 +"POT-Creation-Date: 2009-04-18 10:05+0800\n"
     1.9  "PO-Revision-Date: 2009-04-05 12:10+0800\n"
    1.10  "Last-Translator: 宋冬生 <songdonogsheng@live.cn>\n"
    1.11  "Language-Team: Simplified Chinese <i18n-zh@googlegroups.com >\n"
    1.12 @@ -349,7 +349,7 @@
    1.13  "If <command role=\"hg-ext-mq\">qnew</command> finds modified files in the "
    1.14  "working directory, it will refuse to create a new patch unless the <option "
    1.15  "role=\"hg-ext-mq-cmd-qnew-opt\">-f</option> option is used (see below).  This "
    1.16 -"behaviour allows you to <command role=\"hg-ext-mq\">qrefresh</command> your "
    1.17 +"behavior allows you to <command role=\"hg-ext-mq\">qrefresh</command> your "
    1.18  "topmost applied patch before you apply a new patch on top of it."
    1.19  msgstr ""
    1.20  
    1.21 @@ -436,7 +436,7 @@
    1.22  msgid ""
    1.23  "By default, the <command role=\"hg-ext-mq\">qpop</command> command will not "
    1.24  "pop any patches if the working directory has been modified.  You can override "
    1.25 -"this behaviour using the <option role=\"hg-ext-mq-cmd-qpop-opt\">-f</option> "
    1.26 +"this behavior using the <option role=\"hg-ext-mq-cmd-qpop-opt\">-f</option> "
    1.27  "option, which reverts all modifications in the working directory."
    1.28  msgstr ""
    1.29  
    1.30 @@ -1420,7 +1420,7 @@
    1.31  #: ../en/ch00-preface.xml:153
    1.32  msgid ""
    1.33  "The advantage of this approach is that the examples are always accurate; they "
    1.34 -"describe <emphasis>exactly</emphasis> the behaviour of the version of "
    1.35 +"describe <emphasis>exactly</emphasis> the behavior of the version of "
    1.36  "Mercurial that's mentioned at the front of the book.  If I update the version "
    1.37  "of Mercurial that I'm documenting, and the output of some command changes, "
    1.38  "the build fails."
    1.39 @@ -1451,7 +1451,7 @@
    1.40  msgid ""
    1.41  "So when you're reading examples, don't place too much weight on the dates or "
    1.42  "times you see in the output of commands.  But <emphasis>do</emphasis> be "
    1.43 -"confident that the behaviour you're seeing is consistent and reproducible."
    1.44 +"confident that the behavior you're seeing is consistent and reproducible."
    1.45  msgstr ""
    1.46  
    1.47  #. type: Content of: <book><preface><sect1><title>
    1.48 @@ -2579,7 +2579,7 @@
    1.49  
    1.50  #. type: Content of: <book><chapter><sect1><figure>
    1.51  #: ../en/ch01-tour-basic.xml:259 ../en/ch02-tour-merge.xml:50
    1.52 -#: ../en/ch02-tour-merge.xml:181 ../en/ch03-concepts.xml:293
    1.53 +#: ../en/ch02-tour-merge.xml:188 ../en/ch03-concepts.xml:295
    1.54  msgid "<placeholder type=\"mediaobject\" id=\"0\"/>"
    1.55  msgstr ""
    1.56  
    1.57 @@ -2591,13 +2591,13 @@
    1.58  
    1.59  #. type: Content of: <book><chapter><sect1><sect2><figure><mediaobject><textobject><phrase>
    1.60  #: ../en/ch01-tour-basic.xml:261 ../en/ch02-tour-merge.xml:52
    1.61 -#: ../en/ch02-tour-merge.xml:82 ../en/ch02-tour-merge.xml:129
    1.62 -#: ../en/ch02-tour-merge.xml:183 ../en/ch02-tour-merge.xml:254
    1.63 -#: ../en/ch03-concepts.xml:57 ../en/ch03-concepts.xml:106
    1.64 -#: ../en/ch03-concepts.xml:191 ../en/ch03-concepts.xml:295
    1.65 -#: ../en/ch03-concepts.xml:346 ../en/ch03-concepts.xml:361
    1.66 -#: ../en/ch03-concepts.xml:402 ../en/ch03-concepts.xml:422
    1.67 -#: ../en/ch03-concepts.xml:465 ../en/ch05-collab.xml:276
    1.68 +#: ../en/ch02-tour-merge.xml:82 ../en/ch02-tour-merge.xml:163
    1.69 +#: ../en/ch02-tour-merge.xml:190 ../en/ch02-tour-merge.xml:260
    1.70 +#: ../en/ch03-concepts.xml:59 ../en/ch03-concepts.xml:108
    1.71 +#: ../en/ch03-concepts.xml:193 ../en/ch03-concepts.xml:297
    1.72 +#: ../en/ch03-concepts.xml:348 ../en/ch03-concepts.xml:363
    1.73 +#: ../en/ch03-concepts.xml:404 ../en/ch03-concepts.xml:424
    1.74 +#: ../en/ch03-concepts.xml:467 ../en/ch05-collab.xml:322
    1.75  #: ../en/ch08-undo.xml:365 ../en/ch08-undo.xml:412 ../en/ch08-undo.xml:477
    1.76  #: ../en/ch08-undo.xml:515 ../en/ch11-mq.xml:412
    1.77  msgid "XXX add text"
    1.78 @@ -3040,7 +3040,7 @@
    1.79  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
    1.80  #: ../en/ch01-tour-basic.xml:592
    1.81  msgid ""
    1.82 -"To set a user name, use your favourite editor to create a file called "
    1.83 +"To set a user name, use your favorite editor to create a file called "
    1.84  "<filename role=\"special\">.hgrc</filename> in your home directory.  "
    1.85  "Mercurial will use this file to look up your personalised configuration "
    1.86  "settings.  The initial contents of your <filename role=\"special\">.hgrc</"
    1.87 @@ -3540,12 +3540,12 @@
    1.88  "\"directory\">my-new-hello</filename> 之后版本库的内容"
    1.89  
    1.90  #. type: Content of: <book><chapter><sect1><sect2><figure>
    1.91 -#: ../en/ch02-tour-merge.xml:78 ../en/ch02-tour-merge.xml:125
    1.92 -#: ../en/ch02-tour-merge.xml:250 ../en/ch03-concepts.xml:55
    1.93 -#: ../en/ch03-concepts.xml:104 ../en/ch03-concepts.xml:189
    1.94 -#: ../en/ch03-concepts.xml:344 ../en/ch03-concepts.xml:359
    1.95 -#: ../en/ch03-concepts.xml:400 ../en/ch03-concepts.xml:420
    1.96 -#: ../en/ch03-concepts.xml:461 ../en/ch05-collab.xml:274
    1.97 +#: ../en/ch02-tour-merge.xml:78 ../en/ch02-tour-merge.xml:159
    1.98 +#: ../en/ch02-tour-merge.xml:256 ../en/ch03-concepts.xml:57
    1.99 +#: ../en/ch03-concepts.xml:106 ../en/ch03-concepts.xml:191
   1.100 +#: ../en/ch03-concepts.xml:346 ../en/ch03-concepts.xml:361
   1.101 +#: ../en/ch03-concepts.xml:402 ../en/ch03-concepts.xml:422
   1.102 +#: ../en/ch03-concepts.xml:463 ../en/ch05-collab.xml:320
   1.103  #: ../en/ch08-undo.xml:363 ../en/ch08-undo.xml:410 ../en/ch08-undo.xml:475
   1.104  #: ../en/ch08-undo.xml:513 ../en/ch11-mq.xml:410
   1.105  msgid "  <placeholder type=\"mediaobject\" id=\"0\"/>"
   1.106 @@ -3590,25 +3590,13 @@
   1.107  msgid ""
   1.108  "Mercurial is telling us that the <command role=\"hg-cmd\">hg update</command> "
   1.109  "command won't do a merge; it won't update the working directory when it "
   1.110 -"thinks we might be wanting to do a merge, unless we force it to do so.  "
   1.111 -"Instead, we use the <command role=\"hg-cmd\">hg merge</command> command to "
   1.112 -"merge the two heads."
   1.113 -msgstr ""
   1.114 -
   1.115 -#. type: Content of: <book><chapter><sect1><sect2><figure><title>
   1.116 -#: ../en/ch02-tour-merge.xml:123
   1.117 -msgid "Working directory and repository during merge, and following commit"
   1.118 -msgstr "在合并期间,以及提交之后的工作目录与版本库"
   1.119 -
   1.120 -#. type: Content of: <book><chapter><sect1><sect2><figure><mediaobject>
   1.121 -#: ../en/ch02-tour-merge.xml:126
   1.122 -msgid ""
   1.123 -"<imageobject> <imagedata fileref=\"figs/tour-merge-merge.png\"/> </"
   1.124 -"imageobject>"
   1.125 -msgstr ""
   1.126 -
   1.127 -#. type: Content of: <book><chapter><sect1><sect2><para>
   1.128 -#: ../en/ch02-tour-merge.xml:133
   1.129 +"thinks we might want to do a merge, unless we force it to do so.  Instead, we "
   1.130 +"use the <command role=\"hg-cmd\">hg merge</command> command to merge the two "
   1.131 +"heads."
   1.132 +msgstr ""
   1.133 +
   1.134 +#. type: Content of: <book><chapter><sect1><sect2><para>
   1.135 +#: ../en/ch02-tour-merge.xml:122
   1.136  msgid ""
   1.137  "This updates the working directory so that it contains changes from "
   1.138  "<emphasis>both</emphasis> heads, which is reflected in both the output of "
   1.139 @@ -3617,12 +3605,12 @@
   1.140  msgstr ""
   1.141  
   1.142  #. type: Content of: <book><chapter><sect1><sect2><title>
   1.143 -#: ../en/ch02-tour-merge.xml:143
   1.144 +#: ../en/ch02-tour-merge.xml:132
   1.145  msgid "Committing the results of the merge"
   1.146  msgstr "提交合并结果"
   1.147  
   1.148  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.149 -#: ../en/ch02-tour-merge.xml:145
   1.150 +#: ../en/ch02-tour-merge.xml:134
   1.151  msgid ""
   1.152  "Whenever we've done a merge, <command role=\"hg-cmd\">hg parents</command> "
   1.153  "will display two parents until we <command role=\"hg-cmd\">hg commit</"
   1.154 @@ -3630,7 +3618,7 @@
   1.155  msgstr ""
   1.156  
   1.157  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.158 -#: ../en/ch02-tour-merge.xml:152
   1.159 +#: ../en/ch02-tour-merge.xml:141
   1.160  msgid ""
   1.161  "We now have a new tip revision; notice that it has <emphasis>both</emphasis> "
   1.162  "of our former heads as its parents.  These are the same revisions that were "
   1.163 @@ -3638,7 +3626,7 @@
   1.164  msgstr ""
   1.165  
   1.166  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.167 -#: ../en/ch02-tour-merge.xml:159
   1.168 +#: ../en/ch02-tour-merge.xml:148
   1.169  msgid ""
   1.170  "In <xref linkend=\"fig:tour-merge:merge\"/>, you can see a representation of "
   1.171  "what happens to the working directory during the merge, and how this affects "
   1.172 @@ -3647,35 +3635,57 @@
   1.173  "changeset."
   1.174  msgstr ""
   1.175  
   1.176 +#. type: Content of: <book><chapter><sect1><sect2><figure><title>
   1.177 +#: ../en/ch02-tour-merge.xml:157
   1.178 +msgid "Working directory and repository during merge, and following commit"
   1.179 +msgstr "在合并期间,以及提交之后的工作目录与版本库"
   1.180 +
   1.181 +#. type: Content of: <book><chapter><sect1><sect2><figure><mediaobject>
   1.182 +#: ../en/ch02-tour-merge.xml:160
   1.183 +msgid ""
   1.184 +"<imageobject> <imagedata fileref=\"figs/tour-merge-merge.png\"/> </"
   1.185 +"imageobject>"
   1.186 +msgstr ""
   1.187 +
   1.188 +#. type: Content of: <book><chapter><sect1><sect2><para>
   1.189 +#: ../en/ch02-tour-merge.xml:167
   1.190 +msgid ""
   1.191 +"We sometimes talk about a merge having <emphasis>sides</emphasis>: the left "
   1.192 +"side is the first parent in the output of <command role=\"hg-cmd\">hg "
   1.193 +"parents</command>, and the right side is the second.  If the working "
   1.194 +"directory was at e.g. revision 5 before we began a merge, that revision will "
   1.195 +"become the left side of the merge."
   1.196 +msgstr ""
   1.197 +
   1.198  #. type: Content of: <book><chapter><sect1><title>
   1.199 -#: ../en/ch02-tour-merge.xml:170
   1.200 +#: ../en/ch02-tour-merge.xml:177
   1.201  msgid "Merging conflicting changes"
   1.202  msgstr "合并有冲突的改变"
   1.203  
   1.204  #. type: Content of: <book><chapter><sect1><para>
   1.205 -#: ../en/ch02-tour-merge.xml:172
   1.206 +#: ../en/ch02-tour-merge.xml:179
   1.207  msgid ""
   1.208  "Most merges are simple affairs, but sometimes you'll find yourself merging "
   1.209 -"changes where each modifies the same portions of the same files.  Unless both "
   1.210 -"modifications are identical, this results in a <emphasis>conflict</emphasis>, "
   1.211 -"where you have to decide how to reconcile the different changes into "
   1.212 -"something coherent."
   1.213 +"changes where each side modifies the same portions of the same files.  Unless "
   1.214 +"both modifications are identical, this results in a <emphasis>conflict</"
   1.215 +"emphasis>, where you have to decide how to reconcile the different changes "
   1.216 +"into something coherent."
   1.217  msgstr ""
   1.218  
   1.219  #. type: Content of: <book><chapter><sect1><figure><title>
   1.220 -#: ../en/ch02-tour-merge.xml:180
   1.221 +#: ../en/ch02-tour-merge.xml:187
   1.222  msgid "Conflicting changes to a document"
   1.223  msgstr "冲突的修改"
   1.224  
   1.225  #. type: Content of: <book><chapter><sect1><figure><mediaobject>
   1.226 -#: ../en/ch02-tour-merge.xml:182
   1.227 +#: ../en/ch02-tour-merge.xml:189
   1.228  msgid ""
   1.229  "<imageobject><imagedata fileref=\"figs/tour-merge-conflict.png\"/></"
   1.230  "imageobject>"
   1.231  msgstr ""
   1.232  
   1.233  #. type: Content of: <book><chapter><sect1><para>
   1.234 -#: ../en/ch02-tour-merge.xml:187
   1.235 +#: ../en/ch02-tour-merge.xml:194
   1.236  msgid ""
   1.237  "<xref linkend=\"fig:tour-merge:conflict\"/> illustrates an instance of two "
   1.238  "conflicting changes to a document.  We started with a single version of the "
   1.239 @@ -3685,20 +3695,19 @@
   1.240  msgstr ""
   1.241  
   1.242  #. type: Content of: <book><chapter><sect1><para>
   1.243 -#: ../en/ch02-tour-merge.xml:194
   1.244 +#: ../en/ch02-tour-merge.xml:201
   1.245  msgid ""
   1.246  "Mercurial doesn't have a built-in facility for handling conflicts. Instead, "
   1.247 -"it runs an external program called <command>hgmerge</command>.  This is a "
   1.248 -"shell script that is bundled with Mercurial; you can change it to behave "
   1.249 -"however you please.  What it does by default is try to find one of several "
   1.250 -"different merging tools that are likely to be installed on your system.  It "
   1.251 -"first tries a few fully automatic merging tools; if these don't succeed "
   1.252 -"(because the resolution process requires human guidance) or aren't present, "
   1.253 -"the script tries a few different graphical merging tools."
   1.254 -msgstr ""
   1.255 -
   1.256 -#. type: Content of: <book><chapter><sect1><para>
   1.257 -#: ../en/ch02-tour-merge.xml:205
   1.258 +"it runs an external program, usually one that displays some kind of graphical "
   1.259 +"conflict resolution interface.  By default, Mercurial tries to find one of "
   1.260 +"several different merging tools that are likely to be installed on your "
   1.261 +"system.  It first tries a few fully automatic merging tools; if these don't "
   1.262 +"succeed (because the resolution process requires human guidance) or aren't "
   1.263 +"present, it tries a few different graphical merging tools."
   1.264 +msgstr ""
   1.265 +
   1.266 +#. type: Content of: <book><chapter><sect1><para>
   1.267 +#: ../en/ch02-tour-merge.xml:211
   1.268  msgid ""
   1.269  "It's also possible to get Mercurial to run another program or script instead "
   1.270  "of <command>hgmerge</command>, by setting the <envar>HGMERGE</envar> "
   1.271 @@ -3706,12 +3715,12 @@
   1.272  msgstr ""
   1.273  
   1.274  #. type: Content of: <book><chapter><sect1><sect2><title>
   1.275 -#: ../en/ch02-tour-merge.xml:211
   1.276 +#: ../en/ch02-tour-merge.xml:217
   1.277  msgid "Using a graphical merge tool"
   1.278  msgstr "使用图形合并工具"
   1.279  
   1.280  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.281 -#: ../en/ch02-tour-merge.xml:213
   1.282 +#: ../en/ch02-tour-merge.xml:219
   1.283  msgid ""
   1.284  "My preferred graphical merge tool is <command>kdiff3</command>, which I'll "
   1.285  "use to describe the features that are common to graphical file merging "
   1.286 @@ -3723,7 +3732,7 @@
   1.287  msgstr ""
   1.288  
   1.289  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
   1.290 -#: ../en/ch02-tour-merge.xml:223
   1.291 +#: ../en/ch02-tour-merge.xml:229
   1.292  msgid ""
   1.293  "At the left is the <emphasis>base</emphasis> version of the file, i.e. the "
   1.294  "most recent version from which the two versions we're trying to merge are "
   1.295 @@ -3731,21 +3740,21 @@
   1.296  msgstr ""
   1.297  
   1.298  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
   1.299 -#: ../en/ch02-tour-merge.xml:228
   1.300 +#: ../en/ch02-tour-merge.xml:234
   1.301  msgid ""
   1.302  "In the middle is <quote>our</quote> version of the file, with the contents "
   1.303  "that we modified."
   1.304  msgstr ""
   1.305  
   1.306  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
   1.307 -#: ../en/ch02-tour-merge.xml:231
   1.308 +#: ../en/ch02-tour-merge.xml:237
   1.309  msgid ""
   1.310  "On the right is <quote>their</quote> version of the file, the one that from "
   1.311  "the changeset that we're trying to merge with."
   1.312  msgstr ""
   1.313  
   1.314  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.315 -#: ../en/ch02-tour-merge.xml:235
   1.316 +#: ../en/ch02-tour-merge.xml:241
   1.317  msgid ""
   1.318  "In the pane below these is the current <emphasis>result</emphasis> of the "
   1.319  "merge. Our task is to replace all of the red text, which indicates unresolved "
   1.320 @@ -3754,7 +3763,7 @@
   1.321  msgstr ""
   1.322  
   1.323  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.324 -#: ../en/ch02-tour-merge.xml:242
   1.325 +#: ../en/ch02-tour-merge.xml:248
   1.326  msgid ""
   1.327  "All four of these panes are <emphasis>locked together</emphasis>; if we "
   1.328  "scroll vertically or horizontally in any of them, the others are updated to "
   1.329 @@ -3762,19 +3771,19 @@
   1.330  msgstr ""
   1.331  
   1.332  #. type: Content of: <book><chapter><sect1><sect2><figure><title>
   1.333 -#: ../en/ch02-tour-merge.xml:248
   1.334 +#: ../en/ch02-tour-merge.xml:254
   1.335  msgid "Using <command>kdiff3</command> to merge versions of a file"
   1.336  msgstr "使用 <command>kdiff3</command> 合并文件的不同版本"
   1.337  
   1.338  #. type: Content of: <book><chapter><sect1><sect2><figure><mediaobject>
   1.339 -#: ../en/ch02-tour-merge.xml:251
   1.340 +#: ../en/ch02-tour-merge.xml:257
   1.341  msgid ""
   1.342  "<imageobject> <imagedata width=\"100%\" fileref=\"figs/kdiff3.png\"/></"
   1.343  "imageobject>"
   1.344  msgstr ""
   1.345  
   1.346  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.347 -#: ../en/ch02-tour-merge.xml:259
   1.348 +#: ../en/ch02-tour-merge.xml:265
   1.349  msgid ""
   1.350  "For each conflicting portion of the file, we can choose to resolve the "
   1.351  "conflict using some combination of text from the base version, ours, or "
   1.352 @@ -3783,7 +3792,7 @@
   1.353  msgstr ""
   1.354  
   1.355  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.356 -#: ../en/ch02-tour-merge.xml:265
   1.357 +#: ../en/ch02-tour-merge.xml:271
   1.358  msgid ""
   1.359  "There are <emphasis>many</emphasis> file merging tools available, too many to "
   1.360  "cover here.  They vary in which platforms they are available for, and in "
   1.361 @@ -3793,12 +3802,12 @@
   1.362  msgstr ""
   1.363  
   1.364  #. type: Content of: <book><chapter><sect1><sect2><title>
   1.365 -#: ../en/ch02-tour-merge.xml:274
   1.366 +#: ../en/ch02-tour-merge.xml:280
   1.367  msgid "A worked example"
   1.368  msgstr "合并实例"
   1.369  
   1.370  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.371 -#: ../en/ch02-tour-merge.xml:276
   1.372 +#: ../en/ch02-tour-merge.xml:282
   1.373  msgid ""
   1.374  "In this example, we will reproduce the file modification history of <xref "
   1.375  "linkend=\"fig:tour-merge:conflict\"/> above.  Let's begin by creating a "
   1.376 @@ -3806,12 +3815,12 @@
   1.377  msgstr ""
   1.378  
   1.379  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.380 -#: ../en/ch02-tour-merge.xml:283
   1.381 +#: ../en/ch02-tour-merge.xml:289
   1.382  msgid "We'll clone the repository and make a change to the file."
   1.383  msgstr ""
   1.384  
   1.385  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.386 -#: ../en/ch02-tour-merge.xml:288
   1.387 +#: ../en/ch02-tour-merge.xml:294
   1.388  msgid ""
   1.389  "And another clone, to simulate someone else making a change to the file. "
   1.390  "(This hints at the idea that it's not all that unusual to merge with yourself "
   1.391 @@ -3820,27 +3829,19 @@
   1.392  msgstr ""
   1.393  
   1.394  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.395 -#: ../en/ch02-tour-merge.xml:296
   1.396 +#: ../en/ch02-tour-merge.xml:302
   1.397  msgid ""
   1.398  "Having created two different versions of the file, we'll set up an "
   1.399  "environment suitable for running our merge."
   1.400  msgstr ""
   1.401  
   1.402  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.403 -#: ../en/ch02-tour-merge.xml:302
   1.404 -msgid ""
   1.405 -"In this example, I won't use Mercurial's normal <command>hgmerge</command> "
   1.406 -"program to do the merge, because it would drop my nice automated example-"
   1.407 -"running tool into a graphical user interface.  Instead, I'll set "
   1.408 -"<envar>HGMERGE</envar> to tell Mercurial to use the non-interactive "
   1.409 -"<command>merge</command> command.  This is bundled with many Unix-like "
   1.410 -"systems. If you're following this example on your computer, don't bother "
   1.411 -"setting <envar>HGMERGE</envar>."
   1.412 -msgstr ""
   1.413 -
   1.414 -#. type: Content of: <book><chapter><sect1><sect2><para>
   1.415 -#: ../en/ch02-tour-merge.xml:312
   1.416 -msgid "<emphasis role=\"bold\">XXX FIX THIS EXAMPLE.</emphasis>"
   1.417 +#: ../en/ch02-tour-merge.xml:308
   1.418 +msgid ""
   1.419 +"In this example, I'll set <envar>HGMERGE</envar> to tell Mercurial to use the "
   1.420 +"non-interactive <command>merge</command> command.  This is bundled with many "
   1.421 +"Unix-like systems. (If you're following this example on your computer, don't "
   1.422 +"bother setting <envar>HGMERGE</envar>.)"
   1.423  msgstr ""
   1.424  
   1.425  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.426 @@ -3913,30 +3914,32 @@
   1.427  msgid ""
   1.428  "The <literal role=\"hg-ext\">fetch</literal> extension adds a new command "
   1.429  "called, not surprisingly, <command role=\"hg-cmd\">hg fetch</command>.  This "
   1.430 -"extension acts as a combination of <command role=\"hg-cmd\">hg pull</"
   1.431 -"command>, <command role=\"hg-cmd\">hg update</command> and <command role=\"hg-"
   1.432 -"cmd\">hg merge</command>.  It begins by pulling changes from another "
   1.433 +"extension acts as a combination of <command role=\"hg-cmd\">hg pull -u</"
   1.434 +"command>, <command role=\"hg-cmd\">hg merge</command> and <command role=\"hg-"
   1.435 +"cmd\">hg commit</command>.  It begins by pulling changes from another "
   1.436  "repository into the current repository.  If it finds that the changes added a "
   1.437 -"new head to the repository, it begins a merge, then commits the result of the "
   1.438 -"merge with an automatically-generated commit message.  If no new heads were "
   1.439 -"added, it updates the working directory to the new tip changeset."
   1.440 +"new head to the repository, it begins a merge, then (if the merge succeeded) "
   1.441 +"commits the result of the merge with an automatically-generated commit "
   1.442 +"message.  If no new heads were added, it updates the working directory to the "
   1.443 +"new tip changeset."
   1.444  msgstr ""
   1.445  
   1.446  #. type: Content of: <book><chapter><sect1><para>
   1.447  #: ../en/ch02-tour-merge.xml:376
   1.448  msgid ""
   1.449  "Enabling the <literal role=\"hg-ext\">fetch</literal> extension is easy.  "
   1.450 -"Edit your <filename role=\"special\">.hgrc</filename>, and either go to the "
   1.451 -"<literal role=\"rc-extensions\">extensions</literal> section or create an "
   1.452 -"<literal role=\"rc-extensions\">extensions</literal> section. Then add a line "
   1.453 -"that simply reads <quote><literal>fetch </literal></quote>."
   1.454 -msgstr ""
   1.455 -
   1.456 -#. type: Content of: <book><chapter><sect1><para>
   1.457 -#: ../en/ch02-tour-merge.xml:385
   1.458 -msgid ""
   1.459 -"(Normally, on the right-hand side of the <quote><literal>=</literal></quote> "
   1.460 -"would appear the location of the extension, but since the <literal role=\"hg-"
   1.461 +"Edit the <filename role=\"special\">.hgrc</filename> file in your home "
   1.462 +"directory, and either go to the <literal role=\"rc-extensions\">extensions</"
   1.463 +"literal> section or create an <literal role=\"rc-extensions\">extensions</"
   1.464 +"literal> section. Then add a line that simply reads <quote><literal>fetch=</"
   1.465 +"literal></quote>."
   1.466 +msgstr ""
   1.467 +
   1.468 +#. type: Content of: <book><chapter><sect1><para>
   1.469 +#: ../en/ch02-tour-merge.xml:388
   1.470 +msgid ""
   1.471 +"(Normally, the right-hand side of the <quote><literal>=</literal></quote> "
   1.472 +"would indicate where to find the extension, but since the <literal role=\"hg-"
   1.473  "ext\">fetch</literal> extension is in the standard distribution, Mercurial "
   1.474  "knows where to search for it.)"
   1.475  msgstr ""
   1.476 @@ -3951,22 +3954,24 @@
   1.477  msgid ""
   1.478  "Unlike many revision control systems, the concepts upon which Mercurial is "
   1.479  "built are simple enough that it's easy to understand how the software really "
   1.480 -"works.  Knowing this certainly isn't necessary, but I find it useful to have "
   1.481 -"a <quote>mental model</quote> of what's going on."
   1.482 +"works.  Knowing these details certainly isn't necessary, so it is certainly "
   1.483 +"safe to skip this chapter.  However, I think you will get more out of the "
   1.484 +"software with a <quote>mental model</quote> of what's going on."
   1.485  msgstr ""
   1.486  
   1.487  #. type: Content of: <book><chapter><para>
   1.488 -#: ../en/ch03-concepts.xml:13
   1.489 -msgid ""
   1.490 -"This understanding gives me confidence that Mercurial has been carefully "
   1.491 -"designed to be both <emphasis>safe</emphasis> and <emphasis>efficient</"
   1.492 -"emphasis>.  And just as importantly, if it's easy for me to retain a good "
   1.493 -"idea of what the software is doing when I perform a revision control task, "
   1.494 -"I'm less likely to be surprised by its behaviour."
   1.495 +#: ../en/ch03-concepts.xml:14
   1.496 +msgid ""
   1.497 +"Being able to understand what's going on behind the scenes gives me "
   1.498 +"confidence that Mercurial has been carefully designed to be both "
   1.499 +"<emphasis>safe</emphasis> and <emphasis>efficient</emphasis>.  And just as "
   1.500 +"importantly, if it's easy for me to retain a good idea of what the software "
   1.501 +"is doing when I perform a revision control task, I'm less likely to be "
   1.502 +"surprised by its behavior."
   1.503  msgstr ""
   1.504  
   1.505  #. type: Content of: <book><chapter><para>
   1.506 -#: ../en/ch03-concepts.xml:20
   1.507 +#: ../en/ch03-concepts.xml:22
   1.508  msgid ""
   1.509  "In this chapter, we'll initially cover the core concepts behind Mercurial's "
   1.510  "design, then continue to discuss some of the interesting details of its "
   1.511 @@ -3974,17 +3979,17 @@
   1.512  msgstr ""
   1.513  
   1.514  #. type: Content of: <book><chapter><sect1><title>
   1.515 -#: ../en/ch03-concepts.xml:25
   1.516 +#: ../en/ch03-concepts.xml:27
   1.517  msgid "Mercurial's historical record"
   1.518  msgstr "Mercurial 的历史记录"
   1.519  
   1.520  #. type: Content of: <book><chapter><sect1><sect2><title>
   1.521 -#: ../en/ch03-concepts.xml:28
   1.522 +#: ../en/ch03-concepts.xml:30
   1.523  msgid "Tracking the history of a single file"
   1.524  msgstr "跟踪单一文件的历史"
   1.525  
   1.526  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.527 -#: ../en/ch03-concepts.xml:30
   1.528 +#: ../en/ch03-concepts.xml:32
   1.529  msgid ""
   1.530  "When Mercurial tracks modifications to a file, it stores the history of that "
   1.531  "file in a metadata object called a <emphasis>filelog</emphasis>.  Each entry "
   1.532 @@ -3996,7 +4001,7 @@
   1.533  msgstr ""
   1.534  
   1.535  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.536 -#: ../en/ch03-concepts.xml:41
   1.537 +#: ../en/ch03-concepts.xml:43
   1.538  msgid ""
   1.539  "A file that is large, or has a lot of history, has its filelog stored in "
   1.540  "separate data (<quote><literal>.d</literal></quote> suffix) and index "
   1.541 @@ -4008,23 +4013,23 @@
   1.542  msgstr ""
   1.543  
   1.544  #. type: Content of: <book><chapter><sect1><sect2><figure><title>
   1.545 -#: ../en/ch03-concepts.xml:53
   1.546 +#: ../en/ch03-concepts.xml:55
   1.547  msgid ""
   1.548  "Relationships between files in working directory and filelogs in repository"
   1.549  msgstr "工作目录中的文件与版本库中的文件日志之间的关系"
   1.550  
   1.551  #. type: Content of: <book><chapter><sect1><sect2><figure><mediaobject>
   1.552 -#: ../en/ch03-concepts.xml:56
   1.553 +#: ../en/ch03-concepts.xml:58
   1.554  msgid "<imageobject><imagedata fileref=\"figs/filelog.png\"/></imageobject>"
   1.555  msgstr ""
   1.556  
   1.557  #. type: Content of: <book><chapter><sect1><sect2><title>
   1.558 -#: ../en/ch03-concepts.xml:63
   1.559 +#: ../en/ch03-concepts.xml:65
   1.560  msgid "Managing tracked files"
   1.561  msgstr "管理跟踪的文件"
   1.562  
   1.563  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.564 -#: ../en/ch03-concepts.xml:65
   1.565 +#: ../en/ch03-concepts.xml:67
   1.566  msgid ""
   1.567  "Mercurial uses a structure called a <emphasis>manifest</emphasis> to collect "
   1.568  "together information about the files that it tracks.  Each entry in the "
   1.569 @@ -4034,12 +4039,12 @@
   1.570  msgstr ""
   1.571  
   1.572  #. type: Content of: <book><chapter><sect1><sect2><title>
   1.573 -#: ../en/ch03-concepts.xml:75
   1.574 +#: ../en/ch03-concepts.xml:77
   1.575  msgid "Recording changeset information"
   1.576  msgstr "记录修改集信息"
   1.577  
   1.578  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.579 -#: ../en/ch03-concepts.xml:77
   1.580 +#: ../en/ch03-concepts.xml:79
   1.581  msgid ""
   1.582  "The <emphasis>changelog</emphasis> contains information about each "
   1.583  "changeset.  Each revision records who committed a change, the changeset "
   1.584 @@ -4048,12 +4053,12 @@
   1.585  msgstr ""
   1.586  
   1.587  #. type: Content of: <book><chapter><sect1><sect2><title>
   1.588 -#: ../en/ch03-concepts.xml:85
   1.589 +#: ../en/ch03-concepts.xml:87
   1.590  msgid "Relationships between revisions"
   1.591  msgstr "版本之间的关系"
   1.592  
   1.593  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.594 -#: ../en/ch03-concepts.xml:87
   1.595 +#: ../en/ch03-concepts.xml:89
   1.596  msgid ""
   1.597  "Within a changelog, a manifest, or a filelog, each revision stores a pointer "
   1.598  "to its immediate parent (or to its two parents, if it's a merge revision).  "
   1.599 @@ -4063,7 +4068,7 @@
   1.600  msgstr ""
   1.601  
   1.602  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.603 -#: ../en/ch03-concepts.xml:94
   1.604 +#: ../en/ch03-concepts.xml:96
   1.605  msgid ""
   1.606  "For every changeset in a repository, there is exactly one revision stored in "
   1.607  "the changelog.  Each revision of the changelog contains a pointer to a single "
   1.608 @@ -4074,17 +4079,17 @@
   1.609  msgstr ""
   1.610  
   1.611  #. type: Content of: <book><chapter><sect1><sect2><figure><title>
   1.612 -#: ../en/ch03-concepts.xml:103
   1.613 +#: ../en/ch03-concepts.xml:105
   1.614  msgid "Metadata relationships"
   1.615  msgstr "元数据之间的关系"
   1.616  
   1.617  #. type: Content of: <book><chapter><sect1><sect2><figure><mediaobject>
   1.618 -#: ../en/ch03-concepts.xml:105
   1.619 +#: ../en/ch03-concepts.xml:107
   1.620  msgid "<imageobject><imagedata fileref=\"figs/metadata.png\"/></imageobject>"
   1.621  msgstr ""
   1.622  
   1.623  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.624 -#: ../en/ch03-concepts.xml:110
   1.625 +#: ../en/ch03-concepts.xml:112
   1.626  msgid ""
   1.627  "As the illustration shows, there is <emphasis>not</emphasis> a <quote>one to "
   1.628  "one</quote> relationship between revisions in the changelog, manifest, or "
   1.629 @@ -4096,24 +4101,24 @@
   1.630  msgstr ""
   1.631  
   1.632  #. type: Content of: <book><chapter><sect1><title>
   1.633 -#: ../en/ch03-concepts.xml:123
   1.634 +#: ../en/ch03-concepts.xml:125
   1.635  msgid "Safe, efficient storage"
   1.636  msgstr "安全,高效的存储"
   1.637  
   1.638  #. type: Content of: <book><chapter><sect1><para>
   1.639 -#: ../en/ch03-concepts.xml:125
   1.640 +#: ../en/ch03-concepts.xml:127
   1.641  msgid ""
   1.642  "The underpinnings of changelogs, manifests, and filelogs are provided by a "
   1.643  "single structure called the <emphasis>revlog</emphasis>."
   1.644  msgstr ""
   1.645  
   1.646  #. type: Content of: <book><chapter><sect1><sect2><title>
   1.647 -#: ../en/ch03-concepts.xml:130
   1.648 +#: ../en/ch03-concepts.xml:132
   1.649  msgid "Efficient storage"
   1.650  msgstr "高效存储"
   1.651  
   1.652  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.653 -#: ../en/ch03-concepts.xml:132
   1.654 +#: ../en/ch03-concepts.xml:134
   1.655  msgid ""
   1.656  "The revlog provides efficient storage of revisions using a <emphasis>delta</"
   1.657  "emphasis> mechanism.  Instead of storing a complete copy of a file for each "
   1.658 @@ -4123,7 +4128,7 @@
   1.659  msgstr ""
   1.660  
   1.661  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.662 -#: ../en/ch03-concepts.xml:140
   1.663 +#: ../en/ch03-concepts.xml:142
   1.664  msgid ""
   1.665  "Some obsolete revision control systems can only work with deltas of text "
   1.666  "files.  They must either store binary files as complete snapshots or encoded "
   1.667 @@ -4133,12 +4138,12 @@
   1.668  msgstr ""
   1.669  
   1.670  #. type: Content of: <book><chapter><sect1><sect2><title>
   1.671 -#: ../en/ch03-concepts.xml:149
   1.672 +#: ../en/ch03-concepts.xml:151
   1.673  msgid "Safe operation"
   1.674  msgstr "安全操作"
   1.675  
   1.676  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.677 -#: ../en/ch03-concepts.xml:151
   1.678 +#: ../en/ch03-concepts.xml:153
   1.679  msgid ""
   1.680  "Mercurial only ever <emphasis>appends</emphasis> data to the end of a revlog "
   1.681  "file. It never modifies a section of a file after it has written it.  This is "
   1.682 @@ -4147,7 +4152,7 @@
   1.683  msgstr ""
   1.684  
   1.685  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.686 -#: ../en/ch03-concepts.xml:157
   1.687 +#: ../en/ch03-concepts.xml:159
   1.688  msgid ""
   1.689  "In addition, Mercurial treats every write as part of a <emphasis>transaction</"
   1.690  "emphasis> that can span a number of files.  A transaction is "
   1.691 @@ -4159,7 +4164,7 @@
   1.692  msgstr ""
   1.693  
   1.694  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.695 -#: ../en/ch03-concepts.xml:167
   1.696 +#: ../en/ch03-concepts.xml:169
   1.697  msgid ""
   1.698  "The fact that Mercurial only appends to files makes it easier to provide this "
   1.699  "transactional guarantee.  The easier it is to do stuff like this, the more "
   1.700 @@ -4167,12 +4172,12 @@
   1.701  msgstr ""
   1.702  
   1.703  #. type: Content of: <book><chapter><sect1><sect2><title>
   1.704 -#: ../en/ch03-concepts.xml:174
   1.705 +#: ../en/ch03-concepts.xml:176
   1.706  msgid "Fast retrieval"
   1.707  msgstr "快速检索"
   1.708  
   1.709  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.710 -#: ../en/ch03-concepts.xml:176
   1.711 +#: ../en/ch03-concepts.xml:178
   1.712  msgid ""
   1.713  "Mercurial cleverly avoids a pitfall common to all earlier revision control "
   1.714  "systems: the problem of <emphasis>inefficient retrieval</emphasis>. Most "
   1.715 @@ -4185,17 +4190,17 @@
   1.716  msgstr ""
   1.717  
   1.718  #. type: Content of: <book><chapter><sect1><sect2><figure><title>
   1.719 -#: ../en/ch03-concepts.xml:188
   1.720 +#: ../en/ch03-concepts.xml:190
   1.721  msgid "Snapshot of a revlog, with incremental deltas"
   1.722  msgstr "版本日志的快照,以及增量差异"
   1.723  
   1.724  #. type: Content of: <book><chapter><sect1><sect2><figure><mediaobject>
   1.725 -#: ../en/ch03-concepts.xml:190
   1.726 +#: ../en/ch03-concepts.xml:192
   1.727  msgid "<imageobject><imagedata fileref=\"figs/snapshot.png\"/></imageobject>"
   1.728  msgstr ""
   1.729  
   1.730  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.731 -#: ../en/ch03-concepts.xml:195
   1.732 +#: ../en/ch03-concepts.xml:197
   1.733  msgid ""
   1.734  "The innovation that Mercurial applies to this problem is simple but "
   1.735  "effective.  Once the cumulative amount of delta information stored since the "
   1.736 @@ -4207,7 +4212,7 @@
   1.737  msgstr ""
   1.738  
   1.739  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.740 -#: ../en/ch03-concepts.xml:204
   1.741 +#: ../en/ch03-concepts.xml:206
   1.742  msgid ""
   1.743  "<xref linkend=\"fig:concepts:snapshot\"/> illustrates the idea.  In an entry "
   1.744  "in a revlog's index file, Mercurial stores the range of entries from the data "
   1.745 @@ -4215,12 +4220,12 @@
   1.746  msgstr ""
   1.747  
   1.748  #. type: Content of: <book><chapter><sect1><sect2><sect3><title>
   1.749 -#: ../en/ch03-concepts.xml:210
   1.750 +#: ../en/ch03-concepts.xml:212
   1.751  msgid "Aside: the influence of video compression"
   1.752  msgstr "旁白: 视频压缩的影响"
   1.753  
   1.754  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
   1.755 -#: ../en/ch03-concepts.xml:212
   1.756 +#: ../en/ch03-concepts.xml:214
   1.757  msgid ""
   1.758  "If you're familiar with video compression or have ever watched a TV feed "
   1.759  "through a digital cable or satellite service, you may know that most video "
   1.760 @@ -4231,7 +4236,7 @@
   1.761  msgstr ""
   1.762  
   1.763  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
   1.764 -#: ../en/ch03-concepts.xml:221
   1.765 +#: ../en/ch03-concepts.xml:223
   1.766  msgid ""
   1.767  "Because it's possible for a video stream to <quote>drop out</quote> "
   1.768  "occasionally due to signal glitches, and to limit the accumulation of "
   1.769 @@ -4244,12 +4249,12 @@
   1.770  msgstr ""
   1.771  
   1.772  #. type: Content of: <book><chapter><sect1><sect2><title>
   1.773 -#: ../en/ch03-concepts.xml:235
   1.774 +#: ../en/ch03-concepts.xml:237
   1.775  msgid "Identification and strong integrity"
   1.776  msgstr "鉴别和强完整性"
   1.777  
   1.778  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.779 -#: ../en/ch03-concepts.xml:237
   1.780 +#: ../en/ch03-concepts.xml:239
   1.781  msgid ""
   1.782  "Along with delta or snapshot information, a revlog entry contains a "
   1.783  "cryptographic hash of the data that it represents.  This makes it difficult "
   1.784 @@ -4257,7 +4262,7 @@
   1.785  msgstr ""
   1.786  
   1.787  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.788 -#: ../en/ch03-concepts.xml:242
   1.789 +#: ../en/ch03-concepts.xml:244
   1.790  msgid ""
   1.791  "Hashes provide more than a mere check against corruption; they are used as "
   1.792  "the identifiers for revisions.  The changeset identification hashes that you "
   1.793 @@ -4266,7 +4271,7 @@
   1.794  msgstr ""
   1.795  
   1.796  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.797 -#: ../en/ch03-concepts.xml:249
   1.798 +#: ../en/ch03-concepts.xml:251
   1.799  msgid ""
   1.800  "Mercurial verifies that hashes are correct when it retrieves file revisions "
   1.801  "and when it pulls changes from another repository.  If it encounters an "
   1.802 @@ -4274,7 +4279,7 @@
   1.803  msgstr ""
   1.804  
   1.805  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.806 -#: ../en/ch03-concepts.xml:254
   1.807 +#: ../en/ch03-concepts.xml:256
   1.808  msgid ""
   1.809  "In addition to the effect it has on retrieval efficiency, Mercurial's use of "
   1.810  "periodic snapshots makes it more robust against partial data corruption.  If "
   1.811 @@ -4285,12 +4290,12 @@
   1.812  msgstr ""
   1.813  
   1.814  #. type: Content of: <book><chapter><sect1><title>
   1.815 -#: ../en/ch03-concepts.xml:266
   1.816 +#: ../en/ch03-concepts.xml:268
   1.817  msgid "Revision history, branching, and merging"
   1.818  msgstr "修订历史,分支与合并"
   1.819  
   1.820  #. type: Content of: <book><chapter><sect1><para>
   1.821 -#: ../en/ch03-concepts.xml:268
   1.822 +#: ../en/ch03-concepts.xml:270
   1.823  msgid ""
   1.824  "Every entry in a Mercurial revlog knows the identity of its immediate "
   1.825  "ancestor revision, usually referred to as its <emphasis>parent</emphasis>.  "
   1.826 @@ -4301,7 +4306,7 @@
   1.827  msgstr ""
   1.828  
   1.829  #. type: Content of: <book><chapter><sect1><para>
   1.830 -#: ../en/ch03-concepts.xml:276
   1.831 +#: ../en/ch03-concepts.xml:278
   1.832  msgid ""
   1.833  "In <xref linkend=\"fig:concepts:revlog\"/>, you can see an example of the "
   1.834  "conceptual structure of a revlog.  Filelogs, manifests, and changelogs all "
   1.835 @@ -4310,7 +4315,7 @@
   1.836  msgstr ""
   1.837  
   1.838  #. type: Content of: <book><chapter><sect1><para>
   1.839 -#: ../en/ch03-concepts.xml:282
   1.840 +#: ../en/ch03-concepts.xml:284
   1.841  msgid ""
   1.842  "The first revision in a revlog (at the bottom of the image)  has the null ID "
   1.843  "in both of its parent slots.  For a <quote>normal</quote> revision, its first "
   1.844 @@ -4322,29 +4327,29 @@
   1.845  msgstr ""
   1.846  
   1.847  #. type: Content of: <book><chapter><sect1><figure><title>
   1.848 -#: ../en/ch03-concepts.xml:292
   1.849 +#: ../en/ch03-concepts.xml:294
   1.850  msgid "The conceptual structure of a revlog"
   1.851  msgstr "版本日志的设计结构"
   1.852  
   1.853  #. type: Content of: <book><chapter><sect1><figure><mediaobject>
   1.854 -#: ../en/ch03-concepts.xml:294
   1.855 +#: ../en/ch03-concepts.xml:296
   1.856  msgid "<imageobject><imagedata fileref=\"figs/revlog.png\"/></imageobject>"
   1.857  msgstr ""
   1.858  
   1.859  #. type: Content of: <book><chapter><sect1><title>
   1.860 -#: ../en/ch03-concepts.xml:301
   1.861 +#: ../en/ch03-concepts.xml:303
   1.862  msgid "The working directory"
   1.863  msgstr "工作目录"
   1.864  
   1.865  #. type: Content of: <book><chapter><sect1><para>
   1.866 -#: ../en/ch03-concepts.xml:303
   1.867 +#: ../en/ch03-concepts.xml:305
   1.868  msgid ""
   1.869  "In the working directory, Mercurial stores a snapshot of the files from the "
   1.870  "repository as of a particular changeset."
   1.871  msgstr ""
   1.872  
   1.873  #. type: Content of: <book><chapter><sect1><para>
   1.874 -#: ../en/ch03-concepts.xml:306
   1.875 +#: ../en/ch03-concepts.xml:308
   1.876  msgid ""
   1.877  "The working directory <quote>knows</quote> which changeset it contains.  When "
   1.878  "you update the working directory to contain a particular changeset, Mercurial "
   1.879 @@ -4355,7 +4360,7 @@
   1.880  msgstr ""
   1.881  
   1.882  #. type: Content of: <book><chapter><sect1><para>
   1.883 -#: ../en/ch03-concepts.xml:315
   1.884 +#: ../en/ch03-concepts.xml:317
   1.885  msgid ""
   1.886  "The <emphasis>dirstate</emphasis> contains Mercurial's knowledge of the "
   1.887  "working directory.  This details which changeset the working directory is "
   1.888 @@ -4364,7 +4369,7 @@
   1.889  msgstr ""
   1.890  
   1.891  #. type: Content of: <book><chapter><sect1><para>
   1.892 -#: ../en/ch03-concepts.xml:321
   1.893 +#: ../en/ch03-concepts.xml:323
   1.894  msgid ""
   1.895  "Just as a revision of a revlog has room for two parents, so that it can "
   1.896  "represent either a normal revision (with one parent)  or a merge of two "
   1.897 @@ -4379,12 +4384,12 @@
   1.898  msgstr ""
   1.899  
   1.900  #. type: Content of: <book><chapter><sect1><sect2><title>
   1.901 -#: ../en/ch03-concepts.xml:335
   1.902 +#: ../en/ch03-concepts.xml:337
   1.903  msgid "What happens when you commit"
   1.904  msgstr "当你提交时发生的事情"
   1.905  
   1.906  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.907 -#: ../en/ch03-concepts.xml:337
   1.908 +#: ../en/ch03-concepts.xml:339
   1.909  msgid ""
   1.910  "The dirstate stores parent information for more than just book-keeping "
   1.911  "purposes.  Mercurial uses the parents of the dirstate as <emphasis>the "
   1.912 @@ -4392,17 +4397,17 @@
   1.913  msgstr ""
   1.914  
   1.915  #. type: Content of: <book><chapter><sect1><sect2><figure><title>
   1.916 -#: ../en/ch03-concepts.xml:343
   1.917 +#: ../en/ch03-concepts.xml:345
   1.918  msgid "The working directory can have two parents"
   1.919  msgstr "工作目录可以有两个父亲"
   1.920  
   1.921  #. type: Content of: <book><chapter><sect1><sect2><figure><mediaobject>
   1.922 -#: ../en/ch03-concepts.xml:345
   1.923 +#: ../en/ch03-concepts.xml:347
   1.924  msgid "<imageobject><imagedata fileref=\"figs/wdir.png\"/></imageobject>"
   1.925  msgstr ""
   1.926  
   1.927  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.928 -#: ../en/ch03-concepts.xml:350
   1.929 +#: ../en/ch03-concepts.xml:352
   1.930  msgid ""
   1.931  "<xref linkend=\"fig:concepts:wdir\"/> shows the normal state of the working "
   1.932  "directory, where it has a single changeset as parent.  That changeset is the "
   1.933 @@ -4411,18 +4416,18 @@
   1.934  msgstr ""
   1.935  
   1.936  #. type: Content of: <book><chapter><sect1><sect2><figure><title>
   1.937 -#: ../en/ch03-concepts.xml:357
   1.938 +#: ../en/ch03-concepts.xml:359
   1.939  msgid "The working directory gains new parents after a commit"
   1.940  msgstr "提交之后,工作目录的父亲就改变了"
   1.941  
   1.942  #. type: Content of: <book><chapter><sect1><sect2><figure><mediaobject>
   1.943 -#: ../en/ch03-concepts.xml:360
   1.944 +#: ../en/ch03-concepts.xml:362
   1.945  msgid ""
   1.946  "<imageobject><imagedata fileref=\"figs/wdir-after-commit.png\"/></imageobject>"
   1.947  msgstr ""
   1.948  
   1.949  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.950 -#: ../en/ch03-concepts.xml:365
   1.951 +#: ../en/ch03-concepts.xml:367
   1.952  msgid ""
   1.953  "It's useful to think of the working directory as <quote>the changeset I'm "
   1.954  "about to commit</quote>.  Any files that you tell Mercurial that you've "
   1.955 @@ -4432,7 +4437,7 @@
   1.956  msgstr ""
   1.957  
   1.958  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.959 -#: ../en/ch03-concepts.xml:373
   1.960 +#: ../en/ch03-concepts.xml:375
   1.961  msgid ""
   1.962  "After a commit, Mercurial will update the parents of the working directory, "
   1.963  "so that the first parent is the ID of the new changeset, and the second is "
   1.964 @@ -4442,12 +4447,12 @@
   1.965  msgstr ""
   1.966  
   1.967  #. type: Content of: <book><chapter><sect1><sect2><title>
   1.968 -#: ../en/ch03-concepts.xml:384
   1.969 +#: ../en/ch03-concepts.xml:386
   1.970  msgid "Creating a new head"
   1.971  msgstr "创建新顶点"
   1.972  
   1.973  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.974 -#: ../en/ch03-concepts.xml:386
   1.975 +#: ../en/ch03-concepts.xml:388
   1.976  msgid ""
   1.977  "It's perfectly normal to update the working directory to a changeset other "
   1.978  "than the current tip.  For example, you might want to know what your project "
   1.979 @@ -4460,18 +4465,18 @@
   1.980  msgstr ""
   1.981  
   1.982  #. type: Content of: <book><chapter><sect1><sect2><figure><title>
   1.983 -#: ../en/ch03-concepts.xml:398
   1.984 +#: ../en/ch03-concepts.xml:400
   1.985  msgid "The working directory, updated to an older changeset"
   1.986  msgstr "同步到旧修改集的工作目录"
   1.987  
   1.988  #. type: Content of: <book><chapter><sect1><sect2><figure><mediaobject>
   1.989 -#: ../en/ch03-concepts.xml:401
   1.990 +#: ../en/ch03-concepts.xml:403
   1.991  msgid ""
   1.992  "<imageobject><imagedata fileref=\"figs/wdir-pre-branch.png\"/></imageobject>"
   1.993  msgstr ""
   1.994  
   1.995  #. type: Content of: <book><chapter><sect1><sect2><para>
   1.996 -#: ../en/ch03-concepts.xml:406
   1.997 +#: ../en/ch03-concepts.xml:408
   1.998  msgid ""
   1.999  "Having updated the working directory to an older changeset, what happens if "
  1.1000  "you make some changes, and then commit? Mercurial behaves in the same way as "
  1.1001 @@ -4483,17 +4488,17 @@
  1.1002  msgstr ""
  1.1003  
  1.1004  #. type: Content of: <book><chapter><sect1><sect2><figure><title>
  1.1005 -#: ../en/ch03-concepts.xml:418
  1.1006 +#: ../en/ch03-concepts.xml:420
  1.1007  msgid "After a commit made while synced to an older changeset"
  1.1008  msgstr "对同步到旧修改集的工作目录提交之后"
  1.1009  
  1.1010  #. type: Content of: <book><chapter><sect1><sect2><figure><mediaobject>
  1.1011 -#: ../en/ch03-concepts.xml:421
  1.1012 +#: ../en/ch03-concepts.xml:423
  1.1013  msgid "<imageobject><imagedata fileref=\"figs/wdir-branch.png\"/></imageobject>"
  1.1014  msgstr ""
  1.1015  
  1.1016  #. type: Content of: <book><chapter><sect1><sect2><note><para>
  1.1017 -#: ../en/ch03-concepts.xml:427
  1.1018 +#: ../en/ch03-concepts.xml:429
  1.1019  msgid ""
  1.1020  "If you're new to Mercurial, you should keep in mind a common <quote>error</"
  1.1021  "quote>, which is to use the <command role=\"hg-cmd\">hg pull</command> "
  1.1022 @@ -4507,23 +4512,24 @@
  1.1023  msgstr ""
  1.1024  
  1.1025  #. type: Content of: <book><chapter><sect1><sect2><note><para>
  1.1026 -#: ../en/ch03-concepts.xml:439
  1.1027 +#: ../en/ch03-concepts.xml:441
  1.1028  msgid ""
  1.1029  "I put the word <quote>error</quote> in quotes because all that you need to do "
  1.1030  "to rectify this situation is <command role=\"hg-cmd\">hg merge</command>, "
  1.1031  "then <command role=\"hg-cmd\">hg commit</command>.  In other words, this "
  1.1032 -"almost never has negative consequences; it just surprises people.  I'll "
  1.1033 -"discuss other ways to avoid this behaviour, and why Mercurial behaves in this "
  1.1034 -"initially surprising way, later on."
  1.1035 -msgstr ""
  1.1036 -
  1.1037 -#. type: Content of: <book><chapter><sect1><sect2><title>
  1.1038 -#: ../en/ch03-concepts.xml:451
  1.1039 -msgid "Merging heads"
  1.1040 -msgstr "合并顶点"
  1.1041 -
  1.1042 -#. type: Content of: <book><chapter><sect1><sect2><para>
  1.1043 +"almost never has negative consequences; it's just something of a surprise for "
  1.1044 +"newcomers.  I'll discuss other ways to avoid this behavior, and why Mercurial "
  1.1045 +"behaves in this initially surprising way, later on."
  1.1046 +msgstr ""
  1.1047 +
  1.1048 +#. type: Content of: <book><chapter><sect1><sect2><title>
  1.1049  #: ../en/ch03-concepts.xml:453
  1.1050 +#, fuzzy
  1.1051 +msgid "Merging changes"
  1.1052 +msgstr "共享修改"
  1.1053 +
  1.1054 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.1055 +#: ../en/ch03-concepts.xml:455
  1.1056  msgid ""
  1.1057  "When you run the <command role=\"hg-cmd\">hg merge</command> command, "
  1.1058  "Mercurial leaves the first parent of the working directory unchanged, and "
  1.1059 @@ -4532,18 +4538,18 @@
  1.1060  msgstr ""
  1.1061  
  1.1062  #. type: Content of: <book><chapter><sect1><sect2><figure><title>
  1.1063 -#: ../en/ch03-concepts.xml:460
  1.1064 +#: ../en/ch03-concepts.xml:462
  1.1065  msgid "Merging two heads"
  1.1066  msgstr "合并两个顶点"
  1.1067  
  1.1068  #. type: Content of: <book><chapter><sect1><sect2><figure><mediaobject>
  1.1069 -#: ../en/ch03-concepts.xml:462
  1.1070 +#: ../en/ch03-concepts.xml:464
  1.1071  msgid ""
  1.1072  "<imageobject> <imagedata fileref=\"figs/wdir-merge.png\"/> </imageobject>"
  1.1073  msgstr ""
  1.1074  
  1.1075  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1076 -#: ../en/ch03-concepts.xml:469
  1.1077 +#: ../en/ch03-concepts.xml:471
  1.1078  msgid ""
  1.1079  "Mercurial also has to modify the working directory, to merge the files "
  1.1080  "managed in the two changesets.  Simplified a little, the merging process goes "
  1.1081 @@ -4551,33 +4557,33 @@
  1.1082  msgstr ""
  1.1083  
  1.1084  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.1085 -#: ../en/ch03-concepts.xml:474
  1.1086 +#: ../en/ch03-concepts.xml:476
  1.1087  msgid "If neither changeset has modified a file, do nothing with that file."
  1.1088  msgstr ""
  1.1089  
  1.1090  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.1091 -#: ../en/ch03-concepts.xml:477
  1.1092 +#: ../en/ch03-concepts.xml:479
  1.1093  msgid ""
  1.1094  "If one changeset has modified a file, and the other hasn't, create the "
  1.1095  "modified copy of the file in the working directory."
  1.1096  msgstr ""
  1.1097  
  1.1098  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.1099 -#: ../en/ch03-concepts.xml:481
  1.1100 +#: ../en/ch03-concepts.xml:483
  1.1101  msgid ""
  1.1102  "If one changeset has removed a file, and the other hasn't (or has also "
  1.1103  "deleted it), delete the file from the working directory."
  1.1104  msgstr ""
  1.1105  
  1.1106  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.1107 -#: ../en/ch03-concepts.xml:485
  1.1108 +#: ../en/ch03-concepts.xml:487
  1.1109  msgid ""
  1.1110  "If one changeset has removed a file, but the other has modified the file, ask "
  1.1111  "the user what to do: keep the modified file, or remove it?"
  1.1112  msgstr ""
  1.1113  
  1.1114  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.1115 -#: ../en/ch03-concepts.xml:489
  1.1116 +#: ../en/ch03-concepts.xml:491
  1.1117  msgid ""
  1.1118  "If both changesets have modified a file, invoke an external merge program to "
  1.1119  "choose the new contents for the merged file.  This may require input from the "
  1.1120 @@ -4585,14 +4591,14 @@
  1.1121  msgstr ""
  1.1122  
  1.1123  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.1124 -#: ../en/ch03-concepts.xml:494
  1.1125 +#: ../en/ch03-concepts.xml:496
  1.1126  msgid ""
  1.1127  "If one changeset has modified a file, and the other has renamed or copied the "
  1.1128  "file, make sure that the changes follow the new name of the file."
  1.1129  msgstr ""
  1.1130  
  1.1131  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1132 -#: ../en/ch03-concepts.xml:498
  1.1133 +#: ../en/ch03-concepts.xml:500
  1.1134  msgid ""
  1.1135  "There are more details&emdash;merging has plenty of corner cases&emdash;but "
  1.1136  "these are the most common choices that are involved in a merge.  As you can "
  1.1137 @@ -4601,7 +4607,7 @@
  1.1138  msgstr ""
  1.1139  
  1.1140  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1141 -#: ../en/ch03-concepts.xml:505
  1.1142 +#: ../en/ch03-concepts.xml:507
  1.1143  msgid ""
  1.1144  "When you're thinking about what happens when you commit after a merge, once "
  1.1145  "again the working directory is <quote>the changeset I'm about to commit</"
  1.1146 @@ -4611,7 +4617,7 @@
  1.1147  msgstr ""
  1.1148  
  1.1149  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1150 -#: ../en/ch03-concepts.xml:512
  1.1151 +#: ../en/ch03-concepts.xml:514
  1.1152  msgid ""
  1.1153  "Mercurial lets you perform multiple merges, but you must commit the results "
  1.1154  "of each individual merge as you go.  This is necessary because Mercurial only "
  1.1155 @@ -4621,13 +4627,38 @@
  1.1156  "becomes overwhelming."
  1.1157  msgstr ""
  1.1158  
  1.1159 +#. type: Content of: <book><chapter><sect1><sect2><title>
  1.1160 +#: ../en/ch03-concepts.xml:525
  1.1161 +#, fuzzy
  1.1162 +msgid "Merging and renames"
  1.1163 +msgstr "合并顶点"
  1.1164 +
  1.1165 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.1166 +#: ../en/ch03-concepts.xml:527
  1.1167 +msgid ""
  1.1168 +"A surprising number of revision control systems pay little or no attention to "
  1.1169 +"a file's <emphasis>name</emphasis> over time.  For instance, it used to be "
  1.1170 +"common that if a file got renamed on one side of a merge, the changes from "
  1.1171 +"the other side would be silently dropped."
  1.1172 +msgstr ""
  1.1173 +
  1.1174 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.1175 +#: ../en/ch03-concepts.xml:533
  1.1176 +msgid ""
  1.1177 +"Mercurial records metadata when you tell it to perform a rename or copy. It "
  1.1178 +"uses this metadata during a merge to do the right thing in the case of a "
  1.1179 +"merge.  For instance, if I rename a file, and you edit it without renaming "
  1.1180 +"it, when we merge our work the file will be renamed and have your edits "
  1.1181 +"applied."
  1.1182 +msgstr ""
  1.1183 +
  1.1184  #. type: Content of: <book><chapter><sect1><title>
  1.1185 -#: ../en/ch03-concepts.xml:523
  1.1186 +#: ../en/ch03-concepts.xml:543
  1.1187  msgid "Other interesting design features"
  1.1188  msgstr "其它有趣的设计特性"
  1.1189  
  1.1190  #. type: Content of: <book><chapter><sect1><para>
  1.1191 -#: ../en/ch03-concepts.xml:525
  1.1192 +#: ../en/ch03-concepts.xml:545
  1.1193  msgid ""
  1.1194  "In the sections above, I've tried to highlight some of the most important "
  1.1195  "aspects of Mercurial's design, to illustrate that it pays careful attention "
  1.1196 @@ -4640,12 +4671,12 @@
  1.1197  msgstr ""
  1.1198  
  1.1199  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.1200 -#: ../en/ch03-concepts.xml:536
  1.1201 +#: ../en/ch03-concepts.xml:556
  1.1202  msgid "Clever compression"
  1.1203  msgstr "智能压缩"
  1.1204  
  1.1205  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1206 -#: ../en/ch03-concepts.xml:538
  1.1207 +#: ../en/ch03-concepts.xml:558
  1.1208  msgid ""
  1.1209  "When appropriate, Mercurial will store both snapshots and deltas in "
  1.1210  "compressed form.  It does this by always <emphasis>trying to</emphasis> "
  1.1211 @@ -4654,7 +4685,7 @@
  1.1212  msgstr ""
  1.1213  
  1.1214  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1215 -#: ../en/ch03-concepts.xml:544
  1.1216 +#: ../en/ch03-concepts.xml:564
  1.1217  msgid ""
  1.1218  "This means that Mercurial does <quote>the right thing</quote> when storing a "
  1.1219  "file whose native form is compressed, such as a <literal>zip</literal> "
  1.1220 @@ -4664,7 +4695,7 @@
  1.1221  msgstr ""
  1.1222  
  1.1223  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1224 -#: ../en/ch03-concepts.xml:552
  1.1225 +#: ../en/ch03-concepts.xml:572
  1.1226  msgid ""
  1.1227  "Deltas between revisions of a compressed file are usually larger than "
  1.1228  "snapshots of the file, and Mercurial again does <quote>the right thing</"
  1.1229 @@ -4674,12 +4705,12 @@
  1.1230  msgstr ""
  1.1231  
  1.1232  #. type: Content of: <book><chapter><sect1><sect2><sect3><title>
  1.1233 -#: ../en/ch03-concepts.xml:561
  1.1234 +#: ../en/ch03-concepts.xml:581
  1.1235  msgid "Network recompression"
  1.1236  msgstr "网络重新压缩"
  1.1237  
  1.1238  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.1239 -#: ../en/ch03-concepts.xml:563
  1.1240 +#: ../en/ch03-concepts.xml:583
  1.1241  msgid ""
  1.1242  "When storing revisions on disk, Mercurial uses the <quote>deflate</quote> "
  1.1243  "compression algorithm (the same one used by the popular <literal>zip</"
  1.1244 @@ -4689,7 +4720,7 @@
  1.1245  msgstr ""
  1.1246  
  1.1247  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.1248 -#: ../en/ch03-concepts.xml:571
  1.1249 +#: ../en/ch03-concepts.xml:591
  1.1250  msgid ""
  1.1251  "If the connection is over HTTP, Mercurial recompresses the entire stream of "
  1.1252  "data using a compression algorithm that gives a better compression ratio (the "
  1.1253 @@ -4697,11 +4728,11 @@
  1.1254  "compression package).  This combination of algorithm and compression of the "
  1.1255  "entire stream (instead of a revision at a time) substantially reduces the "
  1.1256  "number of bytes to be transferred, yielding better network performance over "
  1.1257 -"almost all kinds of network."
  1.1258 +"most kinds of network."
  1.1259  msgstr ""
  1.1260  
  1.1261  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.1262 -#: ../en/ch03-concepts.xml:581
  1.1263 +#: ../en/ch03-concepts.xml:601
  1.1264  msgid ""
  1.1265  "(If the connection is over <command>ssh</command>, Mercurial "
  1.1266  "<emphasis>doesn't</emphasis> recompress the stream, because <command>ssh</"
  1.1267 @@ -4709,12 +4740,12 @@
  1.1268  msgstr ""
  1.1269  
  1.1270  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.1271 -#: ../en/ch03-concepts.xml:589
  1.1272 +#: ../en/ch03-concepts.xml:609
  1.1273  msgid "Read/write ordering and atomicity"
  1.1274  msgstr "读写顺序与原子性"
  1.1275  
  1.1276  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1277 -#: ../en/ch03-concepts.xml:591
  1.1278 +#: ../en/ch03-concepts.xml:611
  1.1279  msgid ""
  1.1280  "Appending to files isn't the whole story when it comes to guaranteeing that a "
  1.1281  "reader won't see a partial write.  If you recall <xref linkend=\"fig:concepts:"
  1.1282 @@ -4724,7 +4755,7 @@
  1.1283  msgstr ""
  1.1284  
  1.1285  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1286 -#: ../en/ch03-concepts.xml:599
  1.1287 +#: ../en/ch03-concepts.xml:619
  1.1288  msgid ""
  1.1289  "A writer starts a transaction by writing filelog and manifest data, and "
  1.1290  "doesn't write any changelog data until those are finished.  A reader starts "
  1.1291 @@ -4732,7 +4763,7 @@
  1.1292  msgstr ""
  1.1293  
  1.1294  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1295 -#: ../en/ch03-concepts.xml:604
  1.1296 +#: ../en/ch03-concepts.xml:624
  1.1297  msgid ""
  1.1298  "Since the writer has always finished writing filelog and manifest data before "
  1.1299  "it writes to the changelog, a reader will never read a pointer to a partially "
  1.1300 @@ -4741,12 +4772,12 @@
  1.1301  msgstr ""
  1.1302  
  1.1303  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.1304 -#: ../en/ch03-concepts.xml:612
  1.1305 +#: ../en/ch03-concepts.xml:632
  1.1306  msgid "Concurrent access"
  1.1307  msgstr "并发访问"
  1.1308  
  1.1309  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1310 -#: ../en/ch03-concepts.xml:614
  1.1311 +#: ../en/ch03-concepts.xml:634
  1.1312  msgid ""
  1.1313  "The read/write ordering and atomicity guarantees mean that Mercurial never "
  1.1314  "needs to <emphasis>lock</emphasis> a repository when it's reading data, even "
  1.1315 @@ -4757,7 +4788,7 @@
  1.1316  msgstr ""
  1.1317  
  1.1318  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1319 -#: ../en/ch03-concepts.xml:623
  1.1320 +#: ../en/ch03-concepts.xml:643
  1.1321  msgid ""
  1.1322  "The lockless nature of reading means that if you're sharing a repository on a "
  1.1323  "multi-user system, you don't need to grant other local users permission to "
  1.1324 @@ -4771,7 +4802,7 @@
  1.1325  msgstr ""
  1.1326  
  1.1327  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1328 -#: ../en/ch03-concepts.xml:636
  1.1329 +#: ../en/ch03-concepts.xml:656
  1.1330  msgid ""
  1.1331  "Mercurial uses locks to ensure that only one process can write to a "
  1.1332  "repository at a time (the locking mechanism is safe even over filesystems "
  1.1333 @@ -4785,12 +4816,12 @@
  1.1334  msgstr ""
  1.1335  
  1.1336  #. type: Content of: <book><chapter><sect1><sect2><sect3><title>
  1.1337 -#: ../en/ch03-concepts.xml:648
  1.1338 +#: ../en/ch03-concepts.xml:668
  1.1339  msgid "Safe dirstate access"
  1.1340  msgstr "安全的目录状态访问"
  1.1341  
  1.1342  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.1343 -#: ../en/ch03-concepts.xml:650
  1.1344 +#: ../en/ch03-concepts.xml:670
  1.1345  msgid ""
  1.1346  "As with revision data, Mercurial doesn't take a lock to read the dirstate "
  1.1347  "file; it does acquire a lock to write it.  To avoid the possibility of "
  1.1348 @@ -4802,12 +4833,12 @@
  1.1349  msgstr ""
  1.1350  
  1.1351  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.1352 -#: ../en/ch03-concepts.xml:663
  1.1353 +#: ../en/ch03-concepts.xml:683
  1.1354  msgid "Avoiding seeks"
  1.1355  msgstr "避免查找"
  1.1356  
  1.1357  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1358 -#: ../en/ch03-concepts.xml:665
  1.1359 +#: ../en/ch03-concepts.xml:685
  1.1360  msgid ""
  1.1361  "Critical to Mercurial's performance is the avoidance of seeks of the disk "
  1.1362  "head, since any seek is far more expensive than even a comparatively large "
  1.1363 @@ -4815,7 +4846,7 @@
  1.1364  msgstr ""
  1.1365  
  1.1366  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1367 -#: ../en/ch03-concepts.xml:669
  1.1368 +#: ../en/ch03-concepts.xml:689
  1.1369  msgid ""
  1.1370  "This is why, for example, the dirstate is stored in a single file.  If there "
  1.1371  "were a dirstate file per directory that Mercurial tracked, the disk would "
  1.1372 @@ -4824,7 +4855,7 @@
  1.1373  msgstr ""
  1.1374  
  1.1375  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1376 -#: ../en/ch03-concepts.xml:675
  1.1377 +#: ../en/ch03-concepts.xml:695
  1.1378  msgid ""
  1.1379  "Mercurial also uses a <quote>copy on write</quote> scheme when cloning a "
  1.1380  "repository on local storage.  Instead of copying every revlog file from the "
  1.1381 @@ -4837,7 +4868,7 @@
  1.1382  msgstr ""
  1.1383  
  1.1384  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1385 -#: ../en/ch03-concepts.xml:686
  1.1386 +#: ../en/ch03-concepts.xml:706
  1.1387  msgid ""
  1.1388  "A few revision control developers have pointed out that this idea of making a "
  1.1389  "complete private copy of a file is not very efficient in its use of storage.  "
  1.1390 @@ -4849,12 +4880,12 @@
  1.1391  msgstr ""
  1.1392  
  1.1393  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.1394 -#: ../en/ch03-concepts.xml:698
  1.1395 +#: ../en/ch03-concepts.xml:718
  1.1396  msgid "Other contents of the dirstate"
  1.1397  msgstr "目录状态的其它内容"
  1.1398  
  1.1399  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1400 -#: ../en/ch03-concepts.xml:700
  1.1401 +#: ../en/ch03-concepts.xml:720
  1.1402  msgid ""
  1.1403  "Because Mercurial doesn't force you to tell it when you're modifying a file, "
  1.1404  "it uses the dirstate to store some extra information so it can determine "
  1.1405 @@ -4864,7 +4895,7 @@
  1.1406  msgstr ""
  1.1407  
  1.1408  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1409 -#: ../en/ch03-concepts.xml:707
  1.1410 +#: ../en/ch03-concepts.xml:727
  1.1411  msgid ""
  1.1412  "When you explicitly <command role=\"hg-cmd\">hg add</command>, <command role="
  1.1413  "\"hg-cmd\">hg remove</command>, <command role=\"hg-cmd\">hg rename</command> "
  1.1414 @@ -4873,7 +4904,7 @@
  1.1415  msgstr ""
  1.1416  
  1.1417  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1418 -#: ../en/ch03-concepts.xml:714
  1.1419 +#: ../en/ch03-concepts.xml:734
  1.1420  msgid ""
  1.1421  "When Mercurial is checking the states of files in the working directory, it "
  1.1422  "first checks a file's modification time.  If that has not changed, the file "
  1.1423 @@ -4920,13 +4951,13 @@
  1.1424  msgid ""
  1.1425  "After you run a <command role=\"hg-cmd\">hg commit</command>, the files that "
  1.1426  "you added before the commit will no longer be listed in the output of "
  1.1427 -"<command role=\"hg-cmd\">hg status</command>.  The reason for this is that "
  1.1428 -"<command role=\"hg-cmd\">hg status</command> only tells you about "
  1.1429 -"<quote>interesting</quote> files&emdash;those that you have modified or told "
  1.1430 -"Mercurial to do something with&emdash;by default.  If you have a repository "
  1.1431 -"that contains thousands of files, you will rarely want to know about files "
  1.1432 -"that Mercurial is tracking, but that have not changed.  (You can still get "
  1.1433 -"this information; we'll return to this later.)"
  1.1434 +"<command role=\"hg-cmd\">hg status</command>.  The reason for this is that by "
  1.1435 +"default, <command role=\"hg-cmd\">hg status</command> only tells you about "
  1.1436 +"<quote>interesting</quote> files&emdash;those that you have (for example) "
  1.1437 +"modified, removed, or renamed.  If you have a repository that contains "
  1.1438 +"thousands of files, you will rarely want to know about files that Mercurial "
  1.1439 +"is tracking, but that have not changed.  (You can still get this information; "
  1.1440 +"we'll return to this later.)"
  1.1441  msgstr ""
  1.1442  
  1.1443  #. type: Content of: <book><chapter><sect1><para>
  1.1444 @@ -4946,7 +4977,7 @@
  1.1445  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1446  #: ../en/ch04-daily.xml:47
  1.1447  msgid ""
  1.1448 -"A useful behaviour that Mercurial has is that if you pass the name of a "
  1.1449 +"A useful behavior that Mercurial has is that if you pass the name of a "
  1.1450  "directory to a command, every Mercurial command will treat this as <quote>I "
  1.1451  "want to operate on every file in this directory and its subdirectories</"
  1.1452  "quote>."
  1.1453 @@ -4956,16 +4987,16 @@
  1.1454  #: ../en/ch04-daily.xml:54
  1.1455  msgid ""
  1.1456  "Notice in this example that Mercurial printed the names of the files it "
  1.1457 -"added, whereas it didn't do so when we added the file named <filename>a</"
  1.1458 -"filename> in the earlier example."
  1.1459 +"added, whereas it didn't do so when we added the file named <filename>myfile."
  1.1460 +"txt</filename> in the earlier example."
  1.1461  msgstr ""
  1.1462  
  1.1463  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1464  #: ../en/ch04-daily.xml:59
  1.1465  msgid ""
  1.1466  "What's going on is that in the former case, we explicitly named the file to "
  1.1467 -"add on the command line, so the assumption that Mercurial makes in such cases "
  1.1468 -"is that you know what you were doing, and it doesn't print any output."
  1.1469 +"add on the command line.  The assumption that Mercurial makes in such cases "
  1.1470 +"is that we know what we are doing, and it doesn't print any output."
  1.1471  msgstr ""
  1.1472  
  1.1473  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1474 @@ -4975,12 +5006,13 @@
  1.1475  "name of a directory, Mercurial takes the extra step of printing the name of "
  1.1476  "each file that it does something with.  This makes it more clear what is "
  1.1477  "happening, and reduces the likelihood of a silent and nasty surprise.  This "
  1.1478 -"behaviour is common to most Mercurial commands."
  1.1479 +"behavior is common to most Mercurial commands."
  1.1480  msgstr ""
  1.1481  
  1.1482  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.1483  #: ../en/ch04-daily.xml:73
  1.1484 -msgid "Aside: Mercurial tracks files, not directories"
  1.1485 +#, fuzzy
  1.1486 +msgid "Mercurial tracks files, not directories"
  1.1487  msgstr "旁白: Mercurial 只跟踪文件,不跟踪目录"
  1.1488  
  1.1489  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1490 @@ -5026,12 +5058,11 @@
  1.1491  msgid "How to stop tracking a file"
  1.1492  msgstr "如何停止跟踪文件"
  1.1493  
  1.1494 -#
  1.1495  #. type: Content of: <book><chapter><sect1><para>
  1.1496  #: ../en/ch04-daily.xml:111
  1.1497  msgid ""
  1.1498  "Once you decide that a file no longer belongs in your repository, use the "
  1.1499 -"<command role=\"hg-cmd\">hg remove</command> command; this deletes the file, "
  1.1500 +"<command role=\"hg-cmd\">hg remove</command> command. This deletes the file, "
  1.1501  "and tells Mercurial to stop tracking it.  A removed file is represented in "
  1.1502  "the output of <command role=\"hg-cmd\">hg status</command> with a "
  1.1503  "<quote><literal>R</literal></quote>."
  1.1504 @@ -5080,20 +5111,21 @@
  1.1505  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1506  #: ../en/ch04-daily.xml:143
  1.1507  msgid ""
  1.1508 -"If you update the working directory to a changeset in which a file that you "
  1.1509 -"have removed was still tracked, it will reappear in the working directory, "
  1.1510 -"with the contents it had when you committed that changeset.  If you then "
  1.1511 -"update the working directory to a later changeset, in which the file had been "
  1.1512 -"removed, Mercurial will once again remove the file from the working directory."
  1.1513 -msgstr ""
  1.1514 -
  1.1515 -#. type: Content of: <book><chapter><sect1><sect2><title>
  1.1516 -#: ../en/ch04-daily.xml:153
  1.1517 +"If you update the working directory to a changeset that was committed when it "
  1.1518 +"was still tracking a file that you later removed, the file will reappear in "
  1.1519 +"the working directory, with the contents it had when you committed that "
  1.1520 +"changeset.  If you then update the working directory to a later changeset, in "
  1.1521 +"which the file had been removed, Mercurial will once again remove the file "
  1.1522 +"from the working directory."
  1.1523 +msgstr ""
  1.1524 +
  1.1525 +#. type: Content of: <book><chapter><sect1><sect2><title>
  1.1526 +#: ../en/ch04-daily.xml:154
  1.1527  msgid "Missing files"
  1.1528  msgstr "丢失的文件"
  1.1529  
  1.1530  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1531 -#: ../en/ch04-daily.xml:155
  1.1532 +#: ../en/ch04-daily.xml:156
  1.1533  msgid ""
  1.1534  "Mercurial considers a file that you have deleted, but not used <command role="
  1.1535  "\"hg-cmd\">hg remove</command> to delete, to be <emphasis>missing</"
  1.1536 @@ -5103,7 +5135,7 @@
  1.1537  msgstr ""
  1.1538  
  1.1539  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1540 -#: ../en/ch04-daily.xml:165
  1.1541 +#: ../en/ch04-daily.xml:166
  1.1542  msgid ""
  1.1543  "If your repository contains a file that <command role=\"hg-cmd\">hg status</"
  1.1544  "command> reports as missing, and you want the file to stay gone, you can run "
  1.1545 @@ -5113,7 +5145,7 @@
  1.1546  msgstr ""
  1.1547  
  1.1548  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1549 -#: ../en/ch04-daily.xml:175
  1.1550 +#: ../en/ch04-daily.xml:176
  1.1551  msgid ""
  1.1552  "On the other hand, if you deleted the missing file by accident, give <command "
  1.1553  "role=\"hg-cmd\">hg revert</command> the name of the file to recover.  It will "
  1.1554 @@ -5121,12 +5153,12 @@
  1.1555  msgstr ""
  1.1556  
  1.1557  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.1558 -#: ../en/ch04-daily.xml:184
  1.1559 +#: ../en/ch04-daily.xml:185
  1.1560  msgid "Aside: why tell Mercurial explicitly to remove a file?"
  1.1561  msgstr "旁白: 为什么要明确告诉 Mercurial 删除文件?"
  1.1562  
  1.1563  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1564 -#: ../en/ch04-daily.xml:187
  1.1565 +#: ../en/ch04-daily.xml:188
  1.1566  msgid ""
  1.1567  "You might wonder why Mercurial requires you to explicitly tell it that you "
  1.1568  "are deleting a file.  Early during the development of Mercurial, it let you "
  1.1569 @@ -5137,12 +5169,12 @@
  1.1570  msgstr ""
  1.1571  
  1.1572  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.1573 -#: ../en/ch04-daily.xml:198
  1.1574 +#: ../en/ch04-daily.xml:199
  1.1575  msgid "Useful shorthand&emdash;adding and removing files in one step"
  1.1576  msgstr "有用的速记—一个步骤添加和删除文件"
  1.1577  
  1.1578  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1579 -#: ../en/ch04-daily.xml:201
  1.1580 +#: ../en/ch04-daily.xml:202
  1.1581  msgid ""
  1.1582  "Mercurial offers a combination command, <command role=\"hg-cmd\">hg "
  1.1583  "addremove</command>, that adds untracked files and marks missing files as "
  1.1584 @@ -5150,7 +5182,7 @@
  1.1585  msgstr ""
  1.1586  
  1.1587  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1588 -#: ../en/ch04-daily.xml:207
  1.1589 +#: ../en/ch04-daily.xml:208
  1.1590  msgid ""
  1.1591  "The <command role=\"hg-cmd\">hg commit</command> command also provides a "
  1.1592  "<option role=\"hg-opt-commit\">-A</option> option that performs this same add-"
  1.1593 @@ -5158,12 +5190,12 @@
  1.1594  msgstr ""
  1.1595  
  1.1596  #. type: Content of: <book><chapter><sect1><title>
  1.1597 -#: ../en/ch04-daily.xml:217
  1.1598 +#: ../en/ch04-daily.xml:218
  1.1599  msgid "Copying files"
  1.1600  msgstr "复制文件"
  1.1601  
  1.1602  #. type: Content of: <book><chapter><sect1><para>
  1.1603 -#: ../en/ch04-daily.xml:219
  1.1604 +#: ../en/ch04-daily.xml:220
  1.1605  msgid ""
  1.1606  "Mercurial provides a <command role=\"hg-cmd\">hg copy</command> command that "
  1.1607  "lets you make a new copy of a file.  When you copy a file using this command, "
  1.1608 @@ -5173,12 +5205,12 @@
  1.1609  msgstr ""
  1.1610  
  1.1611  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.1612 -#: ../en/ch04-daily.xml:227
  1.1613 +#: ../en/ch04-daily.xml:228
  1.1614  msgid "The results of copying during a merge"
  1.1615  msgstr "合并期间的复制结果"
  1.1616  
  1.1617  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1618 -#: ../en/ch04-daily.xml:229
  1.1619 +#: ../en/ch04-daily.xml:230
  1.1620  msgid ""
  1.1621  "What happens during a merge is that changes <quote>follow</quote> a copy.  To "
  1.1622  "best illustrate what this means, let's create an example.  We'll start with "
  1.1623 @@ -5186,28 +5218,28 @@
  1.1624  msgstr ""
  1.1625  
  1.1626  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1627 -#: ../en/ch04-daily.xml:236
  1.1628 +#: ../en/ch04-daily.xml:237
  1.1629  msgid ""
  1.1630  "We need to do some work in parallel, so that we'll have something to merge.  "
  1.1631  "So let's clone our repository."
  1.1632  msgstr ""
  1.1633  
  1.1634  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1635 -#: ../en/ch04-daily.xml:242
  1.1636 +#: ../en/ch04-daily.xml:243
  1.1637  msgid ""
  1.1638  "Back in our initial repository, let's use the <command role=\"hg-cmd\">hg "
  1.1639  "copy</command> command to make a copy of the first file we created."
  1.1640  msgstr ""
  1.1641  
  1.1642  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1643 -#: ../en/ch04-daily.xml:248
  1.1644 +#: ../en/ch04-daily.xml:249
  1.1645  msgid ""
  1.1646  "If we look at the output of the <command role=\"hg-cmd\">hg status</command> "
  1.1647  "command afterwards, the copied file looks just like a normal added file."
  1.1648  msgstr ""
  1.1649  
  1.1650  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1651 -#: ../en/ch04-daily.xml:254
  1.1652 +#: ../en/ch04-daily.xml:255
  1.1653  msgid ""
  1.1654  "But if we pass the <option role=\"hg-opt-status\">-C</option> option to "
  1.1655  "<command role=\"hg-cmd\">hg status</command>, it prints another line of "
  1.1656 @@ -5216,14 +5248,14 @@
  1.1657  msgstr ""
  1.1658  
  1.1659  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1660 -#: ../en/ch04-daily.xml:262
  1.1661 +#: ../en/ch04-daily.xml:263
  1.1662  msgid ""
  1.1663  "Now, back in the repository we cloned, let's make a change in parallel.  "
  1.1664  "We'll add a line of content to the original file that we created."
  1.1665  msgstr ""
  1.1666  
  1.1667  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1668 -#: ../en/ch04-daily.xml:268
  1.1669 +#: ../en/ch04-daily.xml:269
  1.1670  msgid ""
  1.1671  "Now we have a modified <filename>file</filename> in this repository.  When we "
  1.1672  "pull the changes from the first repository, and merge the two heads, "
  1.1673 @@ -5232,19 +5264,19 @@
  1.1674  msgstr ""
  1.1675  
  1.1676  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.1677 -#: ../en/ch04-daily.xml:278
  1.1678 +#: ../en/ch04-daily.xml:279
  1.1679  msgid "Why should changes follow copies?"
  1.1680  msgstr "为什么复制后需要后续修改?"
  1.1681  
  1.1682  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1683 -#: ../en/ch04-daily.xml:280
  1.1684 -msgid ""
  1.1685 -"This behaviour, of changes to a file propagating out to copies of the file, "
  1.1686 -"might seem esoteric, but in most cases it's highly desirable."
  1.1687 -msgstr ""
  1.1688 -
  1.1689 -#. type: Content of: <book><chapter><sect1><sect2><para>
  1.1690 -#: ../en/ch04-daily.xml:284
  1.1691 +#: ../en/ch04-daily.xml:281
  1.1692 +msgid ""
  1.1693 +"This behavior&emdash;of changes to a file propagating out to copies of the "
  1.1694 +"file&emdash;might seem esoteric, but in most cases it's highly desirable."
  1.1695 +msgstr ""
  1.1696 +
  1.1697 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.1698 +#: ../en/ch04-daily.xml:285
  1.1699  msgid ""
  1.1700  "First of all, remember that this propagation <emphasis>only</emphasis> "
  1.1701  "happens when you merge.  So if you <command role=\"hg-cmd\">hg copy</command> "
  1.1702 @@ -5253,15 +5285,15 @@
  1.1703  msgstr ""
  1.1704  
  1.1705  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1706 -#: ../en/ch04-daily.xml:290
  1.1707 +#: ../en/ch04-daily.xml:291
  1.1708  msgid ""
  1.1709  "The second thing to know is that modifications will only propagate across a "
  1.1710 -"copy as long as the repository that you're pulling changes from "
  1.1711 -"<emphasis>doesn't know</emphasis> about the copy."
  1.1712 -msgstr ""
  1.1713 -
  1.1714 -#. type: Content of: <book><chapter><sect1><sect2><para>
  1.1715 -#: ../en/ch04-daily.xml:295
  1.1716 +"copy as long as the changeset that you're merging changes from "
  1.1717 +"<emphasis>hasn't yet seen</emphasis> the copy."
  1.1718 +msgstr ""
  1.1719 +
  1.1720 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.1721 +#: ../en/ch04-daily.xml:296
  1.1722  msgid ""
  1.1723  "The reason that Mercurial does this is as follows.  Let's say I make an "
  1.1724  "important bug fix in a source file, and commit my changes. Meanwhile, you've "
  1.1725 @@ -5271,16 +5303,16 @@
  1.1726  msgstr ""
  1.1727  
  1.1728  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1729 -#: ../en/ch04-daily.xml:302
  1.1730 +#: ../en/ch04-daily.xml:303
  1.1731  msgid ""
  1.1732  "If you pulled and merged my changes, and Mercurial <emphasis>didn't</"
  1.1733 -"emphasis> propagate changes across copies, your source file would now contain "
  1.1734 -"the bug, and unless you remembered to propagate the bug fix by hand, the bug "
  1.1735 -"would <emphasis>remain</emphasis> in your copy of the file."
  1.1736 -msgstr ""
  1.1737 -
  1.1738 -#. type: Content of: <book><chapter><sect1><sect2><para>
  1.1739 -#: ../en/ch04-daily.xml:308
  1.1740 +"emphasis> propagate changes across copies, your new source file would now "
  1.1741 +"contain the bug, and unless you knew to propagate the bug fix by hand, the "
  1.1742 +"bug would <emphasis>remain</emphasis> in your copy of the file."
  1.1743 +msgstr ""
  1.1744 +
  1.1745 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.1746 +#: ../en/ch04-daily.xml:309
  1.1747  msgid ""
  1.1748  "By automatically propagating the change that fixed the bug from the original "
  1.1749  "file to the copy, Mercurial prevents this class of problem. To my knowledge, "
  1.1750 @@ -5289,97 +5321,104 @@
  1.1751  msgstr ""
  1.1752  
  1.1753  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1754 -#: ../en/ch04-daily.xml:314
  1.1755 +#: ../en/ch04-daily.xml:315
  1.1756  msgid ""
  1.1757  "Once your change history has a record that the copy and subsequent merge "
  1.1758  "occurred, there's usually no further need to propagate changes from the "
  1.1759  "original file to the copied file, and that's why Mercurial only propagates "
  1.1760 -"changes across copies until this point, and no further."
  1.1761 -msgstr ""
  1.1762 -
  1.1763 -#. type: Content of: <book><chapter><sect1><sect2><title>
  1.1764 -#: ../en/ch04-daily.xml:322
  1.1765 +"changes across copies at the first merge, and not afterwards."
  1.1766 +msgstr ""
  1.1767 +
  1.1768 +#. type: Content of: <book><chapter><sect1><sect2><title>
  1.1769 +#: ../en/ch04-daily.xml:323
  1.1770  msgid "How to make changes <emphasis>not</emphasis> follow a copy"
  1.1771  msgstr "如何让复制后<emphasis>不</emphasis>修改?"
  1.1772  
  1.1773  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1774 -#: ../en/ch04-daily.xml:325
  1.1775 +#: ../en/ch04-daily.xml:326
  1.1776  msgid ""
  1.1777  "If, for some reason, you decide that this business of automatically "
  1.1778  "propagating changes across copies is not for you, simply use your system's "
  1.1779  "normal file copy command (on Unix-like systems, that's <command>cp</command>) "
  1.1780  "to make a copy of a file, then <command role=\"hg-cmd\">hg add</command> the "
  1.1781  "new copy by hand.  Before you do so, though, please do reread <xref linkend="
  1.1782 -"\"sec:daily:why-copy\"/>, and make an informed decision that this behaviour "
  1.1783 -"is not appropriate to your specific case."
  1.1784 -msgstr ""
  1.1785 -
  1.1786 -#. type: Content of: <book><chapter><sect1><sect2><title>
  1.1787 -#: ../en/ch04-daily.xml:338
  1.1788 -msgid "Behaviour of the <command role=\"hg-cmd\">hg copy</command> command"
  1.1789 +"\"sec:daily:why-copy\"/>, and make an informed decision that this behavior is "
  1.1790 +"not appropriate to your specific case."
  1.1791 +msgstr ""
  1.1792 +
  1.1793 +#. type: Content of: <book><chapter><sect1><sect2><title>
  1.1794 +#: ../en/ch04-daily.xml:339
  1.1795 +#, fuzzy
  1.1796 +msgid "Behavior of the <command role=\"hg-cmd\">hg copy</command> command"
  1.1797  msgstr "命令 <command role=\"hg-cmd\">hg copy</command> 的特性"
  1.1798  
  1.1799  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1800 -#: ../en/ch04-daily.xml:341
  1.1801 +#: ../en/ch04-daily.xml:342
  1.1802  msgid ""
  1.1803  "When you use the <command role=\"hg-cmd\">hg copy</command> command, "
  1.1804  "Mercurial makes a copy of each source file as it currently stands in the "
  1.1805  "working directory.  This means that if you make some modifications to a file, "
  1.1806  "then <command role=\"hg-cmd\">hg copy</command> it without first having "
  1.1807  "committed those changes, the new copy will also contain the modifications you "
  1.1808 -"have made up until that point.  (I find this behaviour a little "
  1.1809 +"have made up until that point.  (I find this behavior a little "
  1.1810  "counterintuitive, which is why I mention it here.)"
  1.1811  msgstr ""
  1.1812  
  1.1813  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1814 -#: ../en/ch04-daily.xml:351
  1.1815 +#: ../en/ch04-daily.xml:352
  1.1816  msgid ""
  1.1817  "The <command role=\"hg-cmd\">hg copy</command> command acts similarly to the "
  1.1818  "Unix <command>cp</command> command (you can use the <command role=\"hg-cmd"
  1.1819 -"\">hg cp</command> alias if you prefer).  The last argument is the "
  1.1820 -"<emphasis>destination</emphasis>, and all prior arguments are "
  1.1821 -"<emphasis>sources</emphasis>.  If you pass it a single file as the source, "
  1.1822 -"and the destination does not exist, it creates a new file with that name."
  1.1823 -msgstr ""
  1.1824 -
  1.1825 -#. type: Content of: <book><chapter><sect1><sect2><para>
  1.1826 -#: ../en/ch04-daily.xml:362
  1.1827 +"\">hg cp</command> alias if you prefer).  We must supply two or more "
  1.1828 +"arguments, of which the last is treated as the <emphasis>destination</"
  1.1829 +"emphasis>, and all others are <emphasis>sources</emphasis>."
  1.1830 +msgstr ""
  1.1831 +
  1.1832 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.1833 +#: ../en/ch04-daily.xml:360
  1.1834 +msgid ""
  1.1835 +"If you pass <command role=\"hg-cmd\">hg copy</command> a single file as the "
  1.1836 +"source, and the destination does not exist, it creates a new file with that "
  1.1837 +"name."
  1.1838 +msgstr ""
  1.1839 +
  1.1840 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.1841 +#: ../en/ch04-daily.xml:366
  1.1842  msgid ""
  1.1843  "If the destination is a directory, Mercurial copies its sources into that "
  1.1844  "directory."
  1.1845  msgstr ""
  1.1846  
  1.1847  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1848 -#: ../en/ch04-daily.xml:367
  1.1849 +#: ../en/ch04-daily.xml:371
  1.1850  msgid ""
  1.1851  "Copying a directory is recursive, and preserves the directory structure of "
  1.1852  "the source."
  1.1853  msgstr ""
  1.1854  
  1.1855  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1856 -#: ../en/ch04-daily.xml:373
  1.1857 +#: ../en/ch04-daily.xml:377
  1.1858  msgid ""
  1.1859  "If the source and destination are both directories, the source tree is "
  1.1860  "recreated in the destination directory."
  1.1861  msgstr ""
  1.1862  
  1.1863 -#
  1.1864 -#. type: Content of: <book><chapter><sect1><sect2><para>
  1.1865 -#: ../en/ch04-daily.xml:378
  1.1866 -msgid ""
  1.1867 -"As with the <command role=\"hg-cmd\">hg rename</command> command, if you copy "
  1.1868 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.1869 +#: ../en/ch04-daily.xml:382
  1.1870 +msgid ""
  1.1871 +"As with the <command role=\"hg-cmd\">hg remove</command> command, if you copy "
  1.1872  "a file manually and then want Mercurial to know that you've copied the file, "
  1.1873  "simply use the <option role=\"hg-opt-copy\">--after</option> option to "
  1.1874  "<command role=\"hg-cmd\">hg copy</command>."
  1.1875  msgstr ""
  1.1876  
  1.1877  #. type: Content of: <book><chapter><sect1><title>
  1.1878 -#: ../en/ch04-daily.xml:389
  1.1879 +#: ../en/ch04-daily.xml:393
  1.1880  msgid "Renaming files"
  1.1881  msgstr "改名文件"
  1.1882  
  1.1883  #. type: Content of: <book><chapter><sect1><para>
  1.1884 -#: ../en/ch04-daily.xml:391
  1.1885 +#: ../en/ch04-daily.xml:395
  1.1886  msgid ""
  1.1887  "It's rather more common to need to rename a file than to make a copy of it.  "
  1.1888  "The reason I discussed the <command role=\"hg-cmd\">hg copy</command> command "
  1.1889 @@ -5389,7 +5428,7 @@
  1.1890  msgstr ""
  1.1891  
  1.1892  #. type: Content of: <book><chapter><sect1><para>
  1.1893 -#: ../en/ch04-daily.xml:399
  1.1894 +#: ../en/ch04-daily.xml:403
  1.1895  msgid ""
  1.1896  "When you use the <command role=\"hg-cmd\">hg rename</command> command, "
  1.1897  "Mercurial makes a copy of each source file, then deletes it and marks the "
  1.1898 @@ -5397,14 +5436,14 @@
  1.1899  msgstr ""
  1.1900  
  1.1901  #. type: Content of: <book><chapter><sect1><para>
  1.1902 -#: ../en/ch04-daily.xml:405
  1.1903 +#: ../en/ch04-daily.xml:409
  1.1904  msgid ""
  1.1905  "The <command role=\"hg-cmd\">hg status</command> command shows the newly "
  1.1906  "copied file as added, and the copied-from file as removed."
  1.1907  msgstr ""
  1.1908  
  1.1909  #. type: Content of: <book><chapter><sect1><para>
  1.1910 -#: ../en/ch04-daily.xml:411
  1.1911 +#: ../en/ch04-daily.xml:415
  1.1912  msgid ""
  1.1913  "As with the results of a <command role=\"hg-cmd\">hg copy</command>, we must "
  1.1914  "use the <option role=\"hg-opt-status\">-C</option> option to <command role="
  1.1915 @@ -5413,30 +5452,38 @@
  1.1916  msgstr ""
  1.1917  
  1.1918  #. type: Content of: <book><chapter><sect1><para>
  1.1919 -#: ../en/ch04-daily.xml:420
  1.1920 +#: ../en/ch04-daily.xml:424
  1.1921  msgid ""
  1.1922  "As with <command role=\"hg-cmd\">hg remove</command> and <command role=\"hg-"
  1.1923  "cmd\">hg copy</command>, you can tell Mercurial about a rename after the fact "
  1.1924  "using the <option role=\"hg-opt-rename\">--after</option> option.  In most "
  1.1925 -"other respects, the behaviour of the <command role=\"hg-cmd\">hg rename</"
  1.1926 +"other respects, the behavior of the <command role=\"hg-cmd\">hg rename</"
  1.1927  "command> command, and the options it accepts, are similar to the <command "
  1.1928  "role=\"hg-cmd\">hg copy</command> command."
  1.1929  msgstr ""
  1.1930  
  1.1931 -#. type: Content of: <book><chapter><sect1><sect2><title>
  1.1932 -#: ../en/ch04-daily.xml:430
  1.1933 +#. type: Content of: <book><chapter><sect1><para>
  1.1934 +#: ../en/ch04-daily.xml:433
  1.1935 +msgid ""
  1.1936 +"If you're familiar with the Unix command line, you'll be glad to know that "
  1.1937 +"<command role=\"hg-cmd\">hg rename</command> command can be invoked as "
  1.1938 +"<command role=\"hg-cmd\">hg mv</command>."
  1.1939 +msgstr ""
  1.1940 +
  1.1941 +#. type: Content of: <book><chapter><sect1><sect2><title>
  1.1942 +#: ../en/ch04-daily.xml:439
  1.1943  msgid "Renaming files and merging changes"
  1.1944  msgstr "改名文件与合并修改"
  1.1945  
  1.1946  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1947 -#: ../en/ch04-daily.xml:432
  1.1948 +#: ../en/ch04-daily.xml:441
  1.1949  msgid ""
  1.1950  "Since Mercurial's rename is implemented as copy-and-remove, the same "
  1.1951  "propagation of changes happens when you merge after a rename as after a copy."
  1.1952  msgstr ""
  1.1953  
  1.1954  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1955 -#: ../en/ch04-daily.xml:436
  1.1956 +#: ../en/ch04-daily.xml:445
  1.1957  msgid ""
  1.1958  "If I modify a file, and you rename it to a new name, and then we merge our "
  1.1959  "respective changes, my modifications to the file under its original name will "
  1.1960 @@ -5446,7 +5493,7 @@
  1.1961  msgstr ""
  1.1962  
  1.1963  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1964 -#: ../en/ch04-daily.xml:443
  1.1965 +#: ../en/ch04-daily.xml:452
  1.1966  msgid ""
  1.1967  "Whereas having changes follow a copy is a feature where you can perhaps nod "
  1.1968  "and say <quote>yes, that might be useful,</quote> it should be clear that "
  1.1969 @@ -5456,12 +5503,12 @@
  1.1970  msgstr ""
  1.1971  
  1.1972  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.1973 -#: ../en/ch04-daily.xml:452
  1.1974 +#: ../en/ch04-daily.xml:461
  1.1975  msgid "Divergent renames and merging"
  1.1976  msgstr "改名与合并的分歧"
  1.1977  
  1.1978  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1979 -#: ../en/ch04-daily.xml:454
  1.1980 +#: ../en/ch04-daily.xml:463
  1.1981  msgid ""
  1.1982  "The case of diverging names occurs when two developers start with a "
  1.1983  "file&emdash;let's call it <filename>foo</filename>&emdash;in their respective "
  1.1984 @@ -5469,45 +5516,47 @@
  1.1985  msgstr ""
  1.1986  
  1.1987  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1988 -#: ../en/ch04-daily.xml:461
  1.1989 +#: ../en/ch04-daily.xml:470
  1.1990  msgid "Anne renames the file to <filename>bar</filename>."
  1.1991  msgstr ""
  1.1992  
  1.1993  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.1994 -#: ../en/ch04-daily.xml:465
  1.1995 -msgid "Meanwhile, Bob renames it to <filename>quux</filename>."
  1.1996 -msgstr ""
  1.1997 -
  1.1998 -#. type: Content of: <book><chapter><sect1><sect2><para>
  1.1999 -#: ../en/ch04-daily.xml:470
  1.2000 +#: ../en/ch04-daily.xml:474
  1.2001 +msgid ""
  1.2002 +"Meanwhile, Bob renames it to <filename>quux</filename>. (Remember that "
  1.2003 +"<command role=\"hg-cmd\">hg mv</command> is an alias for <command role=\"hg-"
  1.2004 +"cmd\">hg rename</command>.)"
  1.2005 +msgstr ""
  1.2006 +
  1.2007 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2008 +#: ../en/ch04-daily.xml:481
  1.2009  msgid ""
  1.2010  "I like to think of this as a conflict because each developer has expressed "
  1.2011  "different intentions about what the file ought to be named."
  1.2012  msgstr ""
  1.2013  
  1.2014 -#
  1.2015 -#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2016 -#: ../en/ch04-daily.xml:474
  1.2017 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2018 +#: ../en/ch04-daily.xml:485
  1.2019  msgid ""
  1.2020  "What do you think should happen when they merge their work? Mercurial's "
  1.2021 -"actual behaviour is that it always preserves <emphasis>both</emphasis> names "
  1.2022 +"actual behavior is that it always preserves <emphasis>both</emphasis> names "
  1.2023  "when it merges changesets that contain divergent renames."
  1.2024  msgstr ""
  1.2025  
  1.2026  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2027 -#: ../en/ch04-daily.xml:481
  1.2028 -msgid ""
  1.2029 -"Notice that Mercurial does warn about the divergent renames, but it leaves it "
  1.2030 +#: ../en/ch04-daily.xml:492
  1.2031 +msgid ""
  1.2032 +"Notice that while Mercurial warns about the divergent renames, it leaves it "
  1.2033  "up to you to do something about the divergence after the merge."
  1.2034  msgstr ""
  1.2035  
  1.2036  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.2037 -#: ../en/ch04-daily.xml:487
  1.2038 +#: ../en/ch04-daily.xml:498
  1.2039  msgid "Convergent renames and merging"
  1.2040  msgstr "收敛改名与合并"
  1.2041  
  1.2042  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2043 -#: ../en/ch04-daily.xml:489
  1.2044 +#: ../en/ch04-daily.xml:500
  1.2045  msgid ""
  1.2046  "Another kind of rename conflict occurs when two people choose to rename "
  1.2047  "different <emphasis>source</emphasis> files to the same "
  1.2048 @@ -5516,12 +5565,12 @@
  1.2049  msgstr ""
  1.2050  
  1.2051  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.2052 -#: ../en/ch04-daily.xml:497
  1.2053 +#: ../en/ch04-daily.xml:508
  1.2054  msgid "Other name-related corner cases"
  1.2055  msgstr "其它名称相关的角落"
  1.2056  
  1.2057  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2058 -#: ../en/ch04-daily.xml:499
  1.2059 +#: ../en/ch04-daily.xml:510
  1.2060  msgid ""
  1.2061  "Mercurial has a longstanding bug in which it fails to handle a merge where "
  1.2062  "one side has a file with a given name, while another has a directory with the "
  1.2063 @@ -5530,19 +5579,19 @@
  1.2064  msgstr ""
  1.2065  
  1.2066  #. type: Content of: <book><chapter><sect1><title>
  1.2067 -#: ../en/ch04-daily.xml:511
  1.2068 +#: ../en/ch04-daily.xml:523
  1.2069  msgid "Recovering from mistakes"
  1.2070  msgstr "从错误恢复"
  1.2071  
  1.2072  #. type: Content of: <book><chapter><sect1><para>
  1.2073 -#: ../en/ch04-daily.xml:513
  1.2074 +#: ../en/ch04-daily.xml:525
  1.2075  msgid ""
  1.2076  "Mercurial has some useful commands that will help you to recover from some "
  1.2077  "common mistakes."
  1.2078  msgstr ""
  1.2079  
  1.2080  #. type: Content of: <book><chapter><sect1><para>
  1.2081 -#: ../en/ch04-daily.xml:516
  1.2082 +#: ../en/ch04-daily.xml:528
  1.2083  msgid ""
  1.2084  "The <command role=\"hg-cmd\">hg revert</command> command lets you undo "
  1.2085  "changes that you have made to your working directory.  For example, if you "
  1.2086 @@ -5554,22 +5603,187 @@
  1.2087  msgstr ""
  1.2088  
  1.2089  #. type: Content of: <book><chapter><sect1><para>
  1.2090 -#: ../en/ch04-daily.xml:526
  1.2091 -msgid ""
  1.2092 -"It's useful to remember that the <command role=\"hg-cmd\">hg revert</command> "
  1.2093 +#: ../en/ch04-daily.xml:538
  1.2094 +msgid ""
  1.2095 +"It's good to remember that the <command role=\"hg-cmd\">hg revert</command> "
  1.2096  "command is useful for changes that you have not yet committed.  Once you've "
  1.2097  "committed a change, if you decide it was a mistake, you can still do "
  1.2098  "something about it, though your options may be more limited."
  1.2099  msgstr ""
  1.2100  
  1.2101  #. type: Content of: <book><chapter><sect1><para>
  1.2102 -#: ../en/ch04-daily.xml:532
  1.2103 +#: ../en/ch04-daily.xml:544
  1.2104  msgid ""
  1.2105  "For more information about the <command role=\"hg-cmd\">hg revert</command> "
  1.2106  "command, and details about how to deal with changes you have already "
  1.2107  "committed, see <xref linkend=\"chap:undo\"/>."
  1.2108  msgstr ""
  1.2109  
  1.2110 +#. type: Content of: <book><chapter><sect1><title>
  1.2111 +#: ../en/ch04-daily.xml:551
  1.2112 +#, fuzzy
  1.2113 +msgid "Dealing with tricky merges"
  1.2114 +msgstr "处理已经提交的修改"
  1.2115 +
  1.2116 +#. type: Content of: <book><chapter><sect1><para>
  1.2117 +#: ../en/ch04-daily.xml:553
  1.2118 +msgid ""
  1.2119 +"In a complicated or large project, it's not unusual for a merge of two "
  1.2120 +"changesets to result in some headaches.  Suppose there's a big source file "
  1.2121 +"that's been extensively edited by each side of a merge: this is almost "
  1.2122 +"inevitably going to result in conflicts, some of which can take a few tries "
  1.2123 +"to sort out."
  1.2124 +msgstr ""
  1.2125 +
  1.2126 +#. type: Content of: <book><chapter><sect1><para>
  1.2127 +#: ../en/ch04-daily.xml:560
  1.2128 +msgid ""
  1.2129 +"Let's develop a simple case of this and see how to deal with it.  We'll start "
  1.2130 +"off with a repository containing one file, and clone it twice."
  1.2131 +msgstr ""
  1.2132 +
  1.2133 +#. type: Content of: <book><chapter><sect1><para>
  1.2134 +#: ../en/ch04-daily.xml:566
  1.2135 +msgid "In one clone, we'll modify the file in one way."
  1.2136 +msgstr ""
  1.2137 +
  1.2138 +#. type: Content of: <book><chapter><sect1><para>
  1.2139 +#: ../en/ch04-daily.xml:570
  1.2140 +msgid "In another, we'll modify the file differently."
  1.2141 +msgstr ""
  1.2142 +
  1.2143 +#. type: Content of: <book><chapter><sect1><para>
  1.2144 +#: ../en/ch04-daily.xml:574
  1.2145 +msgid "Next, we'll pull each set of changes into our original repo."
  1.2146 +msgstr ""
  1.2147 +
  1.2148 +#. type: Content of: <book><chapter><sect1><para>
  1.2149 +#: ../en/ch04-daily.xml:579
  1.2150 +msgid "We expect our repository to now contain two heads."
  1.2151 +msgstr ""
  1.2152 +
  1.2153 +#. type: Content of: <book><chapter><sect1><para>
  1.2154 +#: ../en/ch04-daily.xml:583
  1.2155 +msgid ""
  1.2156 +"Normally, if we run <command role=\"hg-cmd\">hg merge</command> at this "
  1.2157 +"point, it will drop us into a GUI that will let us manually resolve the "
  1.2158 +"conflicting edits to <filename>myfile.txt</filename>.  However, to simplify "
  1.2159 +"things for presentation here, we'd like the merge to fail immediately "
  1.2160 +"instead.  Here's one way we can do so."
  1.2161 +msgstr ""
  1.2162 +
  1.2163 +#. type: Content of: <book><chapter><sect1><para>
  1.2164 +#: ../en/ch04-daily.xml:592
  1.2165 +msgid ""
  1.2166 +"We've told Mercurial's merge machinery to run the command <command>false</"
  1.2167 +"command> (which, as we desire, fails immediately) if it detects a merge that "
  1.2168 +"it can't sort out automatically."
  1.2169 +msgstr ""
  1.2170 +
  1.2171 +#. type: Content of: <book><chapter><sect1><para>
  1.2172 +#: ../en/ch04-daily.xml:597
  1.2173 +msgid ""
  1.2174 +"If we now fire up <command role=\"hg-cmd\">hg merge</command>, it should "
  1.2175 +"grind to a halt and report a failure."
  1.2176 +msgstr ""
  1.2177 +
  1.2178 +#. type: Content of: <book><chapter><sect1><para>
  1.2179 +#: ../en/ch04-daily.xml:603
  1.2180 +msgid ""
  1.2181 +"Even if we don't notice that the merge failed, Mercurial will prevent us from "
  1.2182 +"accidentally committing the result of a failed merge."
  1.2183 +msgstr ""
  1.2184 +
  1.2185 +#. type: Content of: <book><chapter><sect1><para>
  1.2186 +#: ../en/ch04-daily.xml:609
  1.2187 +msgid ""
  1.2188 +"When <command role=\"hg-cmd\">hg commit</command> fails in this case, it "
  1.2189 +"suggests that we use the unfamiliar <command role=\"hg-cmd\">hg resolve</"
  1.2190 +"command> command.  As usual, <command role=\"hg-cmd\">hg help resolve</"
  1.2191 +"command> will print a helpful synopsis."
  1.2192 +msgstr ""
  1.2193 +
  1.2194 +#. type: Content of: <book><chapter><sect1><sect2><title>
  1.2195 +#: ../en/ch04-daily.xml:616
  1.2196 +msgid "File resolution states"
  1.2197 +msgstr ""
  1.2198 +
  1.2199 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2200 +#: ../en/ch04-daily.xml:618
  1.2201 +msgid ""
  1.2202 +"When a merge occurs, most files will usually remain unmodified.  For each "
  1.2203 +"file where Mercurial has to do something, it tracks the state of the file."
  1.2204 +msgstr ""
  1.2205 +
  1.2206 +#. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.2207 +#: ../en/ch04-daily.xml:624
  1.2208 +msgid ""
  1.2209 +"A <emphasis>resolved</emphasis> file has been successfully merged, either "
  1.2210 +"automatically by Mercurial or manually with human intervention."
  1.2211 +msgstr ""
  1.2212 +
  1.2213 +#. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.2214 +#: ../en/ch04-daily.xml:629
  1.2215 +msgid ""
  1.2216 +"An <emphasis>unresolved</emphasis> file was not merged successfully, and "
  1.2217 +"needs more attention."
  1.2218 +msgstr ""
  1.2219 +
  1.2220 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2221 +#: ../en/ch04-daily.xml:634
  1.2222 +msgid ""
  1.2223 +"If Mercurial sees <emphasis>any</emphasis> file in the unresolved state after "
  1.2224 +"a merge, it considers the merge to have failed.  Fortunately, we do not need "
  1.2225 +"to restart the entire merge from scratch."
  1.2226 +msgstr ""
  1.2227 +
  1.2228 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2229 +#: ../en/ch04-daily.xml:639
  1.2230 +msgid ""
  1.2231 +"The <option role=\"hg-opt-resolve\">--list</option> or <option role=\"hg-opt-"
  1.2232 +"resolve\">-l</option> option to <command role=\"hg-cmd\">hg resolve</command> "
  1.2233 +"prints out the state of each merged file."
  1.2234 +msgstr ""
  1.2235 +
  1.2236 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2237 +#: ../en/ch04-daily.xml:646
  1.2238 +msgid ""
  1.2239 +"In the output from <command role=\"hg-cmd\">hg resolve</command>, a resolved "
  1.2240 +"file is marked with <literal>R</literal>, while an unresolved file is marked "
  1.2241 +"with <literal>U</literal>.  If any files are listed with <literal>U</"
  1.2242 +"literal>, we know that an attempt to commit the results of the merge will "
  1.2243 +"fail."
  1.2244 +msgstr ""
  1.2245 +
  1.2246 +#. type: Content of: <book><chapter><sect1><sect2><title>
  1.2247 +#: ../en/ch04-daily.xml:655
  1.2248 +#, fuzzy
  1.2249 +msgid "Resolving a file merge"
  1.2250 +msgstr "执行合并"
  1.2251 +
  1.2252 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2253 +#: ../en/ch04-daily.xml:657
  1.2254 +msgid ""
  1.2255 +"We have several options to move a file from the unresolved into the resolved "
  1.2256 +"state.  By far the most common is to rerun <command role=\"hg-cmd\">hg "
  1.2257 +"resolve</command>.  If we pass the names of individual files or directories, "
  1.2258 +"it will retry the merges of any unresolved files present in those locations. "
  1.2259 +"We can also pass the <option role=\"hg-opt-resolve\">--all</option> or "
  1.2260 +"<option role=\"hg-opt-resolve\">-a</option> option, which will retry the "
  1.2261 +"merges of <emphasis>all</emphasis> unresolved files."
  1.2262 +msgstr ""
  1.2263 +
  1.2264 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2265 +#: ../en/ch04-daily.xml:667
  1.2266 +msgid ""
  1.2267 +"Mercurial also lets us modify the resolution state of a file directly.  We "
  1.2268 +"can manually mark a file as resolved using the <option role=\"hg-opt-resolve"
  1.2269 +"\">--mark</option> option, or as unresolved using the <option role=\"hg-opt-"
  1.2270 +"resolve\">--unmark</option> option.  This allows us to clean up a "
  1.2271 +"particularly messy merge by hand, and to keep track of our progress with each "
  1.2272 +"file as we go."
  1.2273 +msgstr ""
  1.2274 +
  1.2275  #. type: Content of: <book><chapter><title>
  1.2276  #: ../en/ch05-collab.xml:5
  1.2277  msgid "Collaborating with other people"
  1.2278 @@ -5602,15 +5816,16 @@
  1.2279  "For interactive use, the web interface lets you browse a single repository or "
  1.2280  "a collection of repositories.  You can view the history of a repository, "
  1.2281  "examine each change (comments and diffs), and view the contents of each "
  1.2282 -"directory and file."
  1.2283 -msgstr ""
  1.2284 -
  1.2285 -#. type: Content of: <book><chapter><sect1><para>
  1.2286 -#: ../en/ch05-collab.xml:24
  1.2287 -msgid ""
  1.2288 -"Also for human consumption, the web interface provides an RSS feed of the "
  1.2289 -"changes in a repository.  This lets you <quote>subscribe</quote> to a "
  1.2290 -"repository using your favourite feed reader, and be automatically notified of "
  1.2291 +"directory and file.  You can even get a view of history that gives a "
  1.2292 +"graphical view of the relationships between individual changes and merges."
  1.2293 +msgstr ""
  1.2294 +
  1.2295 +#. type: Content of: <book><chapter><sect1><para>
  1.2296 +#: ../en/ch05-collab.xml:26
  1.2297 +msgid ""
  1.2298 +"Also for human consumption, the web interface provides Atom and RSS feeds of "
  1.2299 +"the changes in a repository.  This lets you <quote>subscribe</quote> to a "
  1.2300 +"repository using your favorite feed reader, and be automatically notified of "
  1.2301  "activity in that repository as soon as it happens.  I find this capability "
  1.2302  "much more convenient than the model of subscribing to a mailing list to which "
  1.2303  "notifications are sent, as it requires no additional configuration on the "
  1.2304 @@ -5618,7 +5833,7 @@
  1.2305  msgstr ""
  1.2306  
  1.2307  #. type: Content of: <book><chapter><sect1><para>
  1.2308 -#: ../en/ch05-collab.xml:34
  1.2309 +#: ../en/ch05-collab.xml:36
  1.2310  msgid ""
  1.2311  "The web interface also lets remote users clone a repository, pull changes "
  1.2312  "from it, and (when the server is configured to permit it) push changes back "
  1.2313 @@ -5627,35 +5842,61 @@
  1.2314  msgstr ""
  1.2315  
  1.2316  #. type: Content of: <book><chapter><sect1><para>
  1.2317 -#: ../en/ch05-collab.xml:40
  1.2318 +#: ../en/ch05-collab.xml:42
  1.2319  msgid ""
  1.2320  "The easiest way to get started with the web interface is to use your web "
  1.2321  "browser to visit an existing repository, such as the master Mercurial "
  1.2322 -"repository at <ulink url=\"http://www.selenic.com/repo/hg?style=gitweb"
  1.2323 -"\">http://www.selenic.com/repo/hg?style=gitweb</ulink>."
  1.2324 -msgstr ""
  1.2325 -
  1.2326 -#. type: Content of: <book><chapter><sect1><para>
  1.2327 -#: ../en/ch05-collab.xml:45
  1.2328 +"repository at <ulink url=\"http://www.selenic.com/repo/hg\">http://www."
  1.2329 +"selenic.com/repo/hg</ulink>."
  1.2330 +msgstr ""
  1.2331 +
  1.2332 +#. type: Content of: <book><chapter><sect1><para>
  1.2333 +#: ../en/ch05-collab.xml:47
  1.2334  msgid ""
  1.2335  "If you're interested in providing a web interface to your own repositories, "
  1.2336 -"Mercurial provides two ways to do this.  The first is using the <command role="
  1.2337 -"\"hg-cmd\">hg serve</command> command, which is best suited to short-term "
  1.2338 -"<quote>lightweight</quote> serving.  See <xref linkend=\"sec:collab:serve\"/> "
  1.2339 -"below for details of how to use this command.  If you have a long-lived "
  1.2340 -"repository that you'd like to make permanently available, Mercurial has built-"
  1.2341 -"in support for the CGI (Common Gateway Interface) standard, which all common "
  1.2342 -"web servers support.  See <xref linkend=\"sec:collab:cgi\"/> for details of "
  1.2343 -"CGI configuration."
  1.2344 +"there are several good ways to do this."
  1.2345 +msgstr ""
  1.2346 +
  1.2347 +#. type: Content of: <book><chapter><sect1><para>
  1.2348 +#: ../en/ch05-collab.xml:51
  1.2349 +msgid ""
  1.2350 +"The easiest and fastest way to get started in an informal environment is to "
  1.2351 +"use the <command role=\"hg-cmd\">hg serve</command> command, which is best "
  1.2352 +"suited to short-term <quote>lightweight</quote> serving.  See <xref linkend="
  1.2353 +"\"sec:collab:serve\"/> below for details of how to use this command."
  1.2354 +msgstr ""
  1.2355 +
  1.2356 +#. type: Content of: <book><chapter><sect1><para>
  1.2357 +#: ../en/ch05-collab.xml:58
  1.2358 +msgid ""
  1.2359 +"For longer-lived repositories that you'd like to have permanently available, "
  1.2360 +"there are several public hosting services available."
  1.2361 +msgstr ""
  1.2362 +
  1.2363 +#. type: Content of: <book><chapter><sect1><itemizedlist><listitem><para>
  1.2364 +#: ../en/ch05-collab.xml:64
  1.2365 +msgid ""
  1.2366 +"Bitbucket, at <ulink url=\"http://bitbucket.org/\">http://bitbucket.org/</"
  1.2367 +"ulink>, provides free hosting for open source projects, and paid hosting for "
  1.2368 +"commercial projects."
  1.2369 +msgstr ""
  1.2370 +
  1.2371 +#. type: Content of: <book><chapter><sect1><para>
  1.2372 +#: ../en/ch05-collab.xml:71
  1.2373 +msgid ""
  1.2374 +"If you would prefer to host your own repositories, Mercurial has built-in "
  1.2375 +"support for several popular hosting technologies, most notably CGI (Common "
  1.2376 +"Gateway Interface), and WSGI (Web Services Gateway Interface).  See <xref "
  1.2377 +"linkend=\"sec:collab:cgi\"/> for details of CGI and WSGI configuration."
  1.2378  msgstr ""
  1.2379  
  1.2380  #. type: Content of: <book><chapter><sect1><title>
  1.2381 -#: ../en/ch05-collab.xml:60
  1.2382 +#: ../en/ch05-collab.xml:80
  1.2383  msgid "Collaboration models"
  1.2384  msgstr "协作模型"
  1.2385  
  1.2386  #. type: Content of: <book><chapter><sect1><para>
  1.2387 -#: ../en/ch05-collab.xml:62
  1.2388 +#: ../en/ch05-collab.xml:82
  1.2389  msgid ""
  1.2390  "With a suitably flexible tool, making decisions about workflow is much more "
  1.2391  "of a social engineering challenge than a technical one. Mercurial imposes few "
  1.2392 @@ -5665,12 +5906,12 @@
  1.2393  msgstr ""
  1.2394  
  1.2395  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.2396 -#: ../en/ch05-collab.xml:70
  1.2397 +#: ../en/ch05-collab.xml:90
  1.2398  msgid "Factors to keep in mind"
  1.2399  msgstr "要牢记的因素"
  1.2400  
  1.2401  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2402 -#: ../en/ch05-collab.xml:72
  1.2403 +#: ../en/ch05-collab.xml:92
  1.2404  msgid ""
  1.2405  "The most important aspect of any model that you must keep in mind is how well "
  1.2406  "it matches the needs and capabilities of the people who will be using it.  "
  1.2407 @@ -5679,7 +5920,7 @@
  1.2408  msgstr ""
  1.2409  
  1.2410  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2411 -#: ../en/ch05-collab.xml:78
  1.2412 +#: ../en/ch05-collab.xml:98
  1.2413  msgid ""
  1.2414  "I once put together a workflow model that seemed to make perfect sense to me, "
  1.2415  "but that caused a considerable amount of consternation and strife within my "
  1.2416 @@ -5692,7 +5933,7 @@
  1.2417  msgstr ""
  1.2418  
  1.2419  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2420 -#: ../en/ch05-collab.xml:88
  1.2421 +#: ../en/ch05-collab.xml:108
  1.2422  msgid ""
  1.2423  "Don't sweep foreseeable social or technical problems under the rug. Whatever "
  1.2424  "scheme you put into effect, you should plan for mistakes and problem "
  1.2425 @@ -5706,12 +5947,12 @@
  1.2426  msgstr ""
  1.2427  
  1.2428  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.2429 -#: ../en/ch05-collab.xml:102
  1.2430 +#: ../en/ch05-collab.xml:122
  1.2431  msgid "Informal anarchy"
  1.2432  msgstr "无政府状态"
  1.2433  
  1.2434  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2435 -#: ../en/ch05-collab.xml:104
  1.2436 +#: ../en/ch05-collab.xml:124
  1.2437  msgid ""
  1.2438  "I wouldn't suggest an <quote>anything goes</quote> approach as something "
  1.2439  "sustainable, but it's a model that's easy to grasp, and it works perfectly "
  1.2440 @@ -5719,11 +5960,11 @@
  1.2441  msgstr ""
  1.2442  
  1.2443  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2444 -#: ../en/ch05-collab.xml:109
  1.2445 +#: ../en/ch05-collab.xml:129
  1.2446  msgid ""
  1.2447  "As one example, many projects have a loose-knit group of collaborators who "
  1.2448  "rarely physically meet each other.  Some groups like to overcome the "
  1.2449 -"isolation of working at a distance by organising occasional <quote>sprints</"
  1.2450 +"isolation of working at a distance by organizing occasional <quote>sprints</"
  1.2451  "quote>.  In a sprint, a number of people get together in a single location (a "
  1.2452  "company's conference room, a hotel meeting room, that kind of place) and "
  1.2453  "spend several days more or less locked in there, hacking intensely on a "
  1.2454 @@ -5731,37 +5972,38 @@
  1.2455  msgstr ""
  1.2456  
  1.2457  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2458 -#: ../en/ch05-collab.xml:118
  1.2459 -msgid ""
  1.2460 -"A sprint is the perfect place to use the <command role=\"hg-cmd\">hg serve</"
  1.2461 -"command> command, since <command role=\"hg-cmd\">hg serve</command> does not "
  1.2462 -"require any fancy server infrastructure.  You can get started with <command "
  1.2463 -"role=\"hg-cmd\">hg serve</command> in moments, by reading <xref linkend=\"sec:"
  1.2464 -"collab:serve\"/> below.  Then simply tell the person next to you that you're "
  1.2465 -"running a server, send the URL to them in an instant message, and you "
  1.2466 -"immediately have a quick-turnaround way to work together.  They can type your "
  1.2467 -"URL into their web browser and quickly review your changes; or they can pull "
  1.2468 -"a bugfix from you and verify it; or they can clone a branch containing a new "
  1.2469 -"feature and try it out."
  1.2470 -msgstr ""
  1.2471 -
  1.2472 -#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2473 -#: ../en/ch05-collab.xml:132
  1.2474 +#: ../en/ch05-collab.xml:138
  1.2475 +msgid ""
  1.2476 +"A sprint or a hacking session in a coffee shop are the perfect places to use "
  1.2477 +"the <command role=\"hg-cmd\">hg serve</command> command, since <command role="
  1.2478 +"\"hg-cmd\">hg serve</command> does not require any fancy server "
  1.2479 +"infrastructure.  You can get started with <command role=\"hg-cmd\">hg serve</"
  1.2480 +"command> in moments, by reading <xref linkend=\"sec:collab:serve\"/> below.  "
  1.2481 +"Then simply tell the person next to you that you're running a server, send "
  1.2482 +"the URL to them in an instant message, and you immediately have a quick-"
  1.2483 +"turnaround way to work together.  They can type your URL into their web "
  1.2484 +"browser and quickly review your changes; or they can pull a bugfix from you "
  1.2485 +"and verify it; or they can clone a branch containing a new feature and try it "
  1.2486 +"out."
  1.2487 +msgstr ""
  1.2488 +
  1.2489 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2490 +#: ../en/ch05-collab.xml:152
  1.2491  msgid ""
  1.2492  "The charm, and the problem, with doing things in an ad hoc fashion like this "
  1.2493  "is that only people who know about your changes, and where they are, can see "
  1.2494  "them.  Such an informal approach simply doesn't scale beyond a handful "
  1.2495 -"people, because each individual needs to know about $n$ different "
  1.2496 -"repositories to pull from."
  1.2497 -msgstr ""
  1.2498 -
  1.2499 -#. type: Content of: <book><chapter><sect1><sect2><title>
  1.2500 -#: ../en/ch05-collab.xml:141
  1.2501 +"people, because each individual needs to know about <emphasis>n</emphasis> "
  1.2502 +"different repositories to pull from."
  1.2503 +msgstr ""
  1.2504 +
  1.2505 +#. type: Content of: <book><chapter><sect1><sect2><title>
  1.2506 +#: ../en/ch05-collab.xml:162
  1.2507  msgid "A single central repository"
  1.2508  msgstr "单一中央版本库"
  1.2509  
  1.2510  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2511 -#: ../en/ch05-collab.xml:143
  1.2512 +#: ../en/ch05-collab.xml:164
  1.2513  msgid ""
  1.2514  "For smaller projects migrating from a centralised revision control tool, "
  1.2515  "perhaps the easiest way to get started is to have changes flow through a "
  1.2516 @@ -5770,7 +6012,7 @@
  1.2517  msgstr ""
  1.2518  
  1.2519  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2520 -#: ../en/ch05-collab.xml:149
  1.2521 +#: ../en/ch05-collab.xml:170
  1.2522  msgid ""
  1.2523  "Contributors start by cloning a copy of this repository.  They can pull "
  1.2524  "changes from it whenever they need to, and some (perhaps all) developers have "
  1.2525 @@ -5779,7 +6021,7 @@
  1.2526  msgstr ""
  1.2527  
  1.2528  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2529 -#: ../en/ch05-collab.xml:154
  1.2530 +#: ../en/ch05-collab.xml:175
  1.2531  msgid ""
  1.2532  "Under this model, it can still often make sense for people to pull changes "
  1.2533  "directly from each other, without going through the central repository.  "
  1.2534 @@ -5792,24 +6034,56 @@
  1.2535  msgstr ""
  1.2536  
  1.2537  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2538 -#: ../en/ch05-collab.xml:165
  1.2539 -msgid ""
  1.2540 -"In this kind of scenario, people usually use the <command>ssh</command> "
  1.2541 -"protocol to securely push changes to the central repository, as documented in "
  1.2542 -"<xref linkend=\"sec:collab:ssh\"/>.  It's also usual to publish a read-only "
  1.2543 -"copy of the repository over HTTP using CGI, as in <xref linkend=\"sec:collab:"
  1.2544 -"cgi\"/>. Publishing over HTTP satisfies the needs of people who don't have "
  1.2545 -"push access, and those who want to use web browsers to browse the "
  1.2546 -"repository's history."
  1.2547 -msgstr ""
  1.2548 -
  1.2549 -#. type: Content of: <book><chapter><sect1><sect2><title>
  1.2550 -#: ../en/ch05-collab.xml:177
  1.2551 +#: ../en/ch05-collab.xml:186
  1.2552 +msgid ""
  1.2553 +"If a team is hosting its own repository in this kind of scenario, people will "
  1.2554 +"usually use the <command>ssh</command> protocol to securely push changes to "
  1.2555 +"the central repository, as documented in <xref linkend=\"sec:collab:ssh\"/>.  "
  1.2556 +"It's also usual to publish a read-only copy of the repository over HTTP, as "
  1.2557 +"in <xref linkend=\"sec:collab:cgi\"/>. Publishing over HTTP satisfies the "
  1.2558 +"needs of people who don't have push access, and those who want to use web "
  1.2559 +"browsers to browse the repository's history."
  1.2560 +msgstr ""
  1.2561 +
  1.2562 +#. type: Content of: <book><chapter><sect1><sect2><title>
  1.2563 +#: ../en/ch05-collab.xml:199
  1.2564 +#, fuzzy
  1.2565 +msgid "A hosted central repository"
  1.2566 +msgstr "单一中央版本库"
  1.2567 +
  1.2568 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2569 +#: ../en/ch05-collab.xml:201
  1.2570 +msgid ""
  1.2571 +"A wonderful thing about public hosting services like <ulink url=\"http://"
  1.2572 +"bitbucket.org/\">Bitbucket</ulink> is that not only do they handle the fiddly "
  1.2573 +"server configuration details, such as user accounts, authentication, and "
  1.2574 +"secure wire protocols, they provide additional infrastructure to make this "
  1.2575 +"model work well."
  1.2576 +msgstr ""
  1.2577 +
  1.2578 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2579 +#: ../en/ch05-collab.xml:208
  1.2580 +msgid ""
  1.2581 +"For instance, a well-engineered hosting service will let people clone their "
  1.2582 +"own copies of a repository with a single click.  This lets people work in "
  1.2583 +"separate spaces and share their changes when they're ready."
  1.2584 +msgstr ""
  1.2585 +
  1.2586 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2587 +#: ../en/ch05-collab.xml:213
  1.2588 +msgid ""
  1.2589 +"In addition, a good hosting service will let people communicate with each "
  1.2590 +"other, for instance to say <quote>there are changes ready for you to review "
  1.2591 +"in this tree</quote>."
  1.2592 +msgstr ""
  1.2593 +
  1.2594 +#. type: Content of: <book><chapter><sect1><sect2><title>
  1.2595 +#: ../en/ch05-collab.xml:220
  1.2596  msgid "Working with multiple branches"
  1.2597  msgstr "使用多个分支工作"
  1.2598  
  1.2599  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2600 -#: ../en/ch05-collab.xml:179
  1.2601 +#: ../en/ch05-collab.xml:222
  1.2602  msgid ""
  1.2603  "Projects of any significant size naturally tend to make progress on several "
  1.2604  "fronts simultaneously.  In the case of software, it's common for a project to "
  1.2605 @@ -5823,30 +6097,30 @@
  1.2606  msgstr ""
  1.2607  
  1.2608  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2609 -#: ../en/ch05-collab.xml:192
  1.2610 +#: ../en/ch05-collab.xml:235
  1.2611  msgid ""
  1.2612  "Mercurial is particularly well suited to managing a number of simultaneous, "
  1.2613  "but not identical, branches.  Each <quote>development direction</quote> can "
  1.2614  "live in its own central repository, and you can merge changes from one to "
  1.2615  "another as the need arises.  Because repositories are independent of each "
  1.2616  "other, unstable changes in a development branch will never affect a stable "
  1.2617 -"branch unless someone explicitly merges those changes in."
  1.2618 -msgstr ""
  1.2619 -
  1.2620 -#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2621 -#: ../en/ch05-collab.xml:201
  1.2622 +"branch unless someone explicitly merges those changes into the stable branch."
  1.2623 +msgstr ""
  1.2624 +
  1.2625 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2626 +#: ../en/ch05-collab.xml:244
  1.2627  msgid ""
  1.2628  "Here's an example of how this can work in practice.  Let's say you have one "
  1.2629  "<quote>main branch</quote> on a central server."
  1.2630  msgstr ""
  1.2631  
  1.2632  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2633 -#: ../en/ch05-collab.xml:207
  1.2634 +#: ../en/ch05-collab.xml:250
  1.2635  msgid "People clone it, make changes locally, test them, and push them back."
  1.2636  msgstr ""
  1.2637  
  1.2638  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2639 -#: ../en/ch05-collab.xml:210
  1.2640 +#: ../en/ch05-collab.xml:253
  1.2641  msgid ""
  1.2642  "Once the main branch reaches a release milestone, you can use the <command "
  1.2643  "role=\"hg-cmd\">hg tag</command> command to give a permanent name to the "
  1.2644 @@ -5854,12 +6128,12 @@
  1.2645  msgstr ""
  1.2646  
  1.2647  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2648 -#: ../en/ch05-collab.xml:216
  1.2649 +#: ../en/ch05-collab.xml:259
  1.2650  msgid "Let's say some ongoing development occurs on the main branch."
  1.2651  msgstr ""
  1.2652  
  1.2653  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2654 -#: ../en/ch05-collab.xml:221
  1.2655 +#: ../en/ch05-collab.xml:264
  1.2656  msgid ""
  1.2657  "Using the tag that was recorded at the milestone, people who clone that "
  1.2658  "repository at any time in the future can use <command role=\"hg-cmd\">hg "
  1.2659 @@ -5867,57 +6141,57 @@
  1.2660  "when that tagged revision was committed."
  1.2661  msgstr ""
  1.2662  
  1.2663 -#
  1.2664 -#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2665 -#: ../en/ch05-collab.xml:229
  1.2666 -msgid ""
  1.2667 -"In addition, immediately after the main branch is tagged, someone can then "
  1.2668 -"clone the main branch on the server to a new <quote>stable</quote> branch, "
  1.2669 -"also on the server."
  1.2670 -msgstr ""
  1.2671 -
  1.2672 -#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2673 -#: ../en/ch05-collab.xml:235
  1.2674 -msgid ""
  1.2675 -"Someone who needs to make a change to the stable branch can then clone "
  1.2676 -"<emphasis>that</emphasis> repository, make their changes, commit, and push "
  1.2677 -"their changes back there."
  1.2678 -msgstr ""
  1.2679 -
  1.2680 -#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2681 -#: ../en/ch05-collab.xml:241
  1.2682 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2683 +#: ../en/ch05-collab.xml:272
  1.2684 +msgid ""
  1.2685 +"In addition, immediately after the main branch is tagged, we can then clone "
  1.2686 +"the main branch on the server to a new <quote>stable</quote> branch, also on "
  1.2687 +"the server."
  1.2688 +msgstr ""
  1.2689 +
  1.2690 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2691 +#: ../en/ch05-collab.xml:278
  1.2692 +msgid ""
  1.2693 +"If we need to make a change to the stable branch, we can then clone "
  1.2694 +"<emphasis>that</emphasis> repository, make our changes, commit, and push our "
  1.2695 +"changes back there."
  1.2696 +msgstr ""
  1.2697 +
  1.2698 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2699 +#: ../en/ch05-collab.xml:285
  1.2700  msgid ""
  1.2701  "Because Mercurial repositories are independent, and Mercurial doesn't move "
  1.2702  "changes around automatically, the stable and main branches are "
  1.2703 -"<emphasis>isolated</emphasis> from each other.  The changes that you made on "
  1.2704 +"<emphasis>isolated</emphasis> from each other.  The changes that we made on "
  1.2705  "the main branch don't <quote>leak</quote> to the stable branch, and vice "
  1.2706  "versa."
  1.2707  msgstr ""
  1.2708  
  1.2709  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2710 -#: ../en/ch05-collab.xml:248
  1.2711 -msgid ""
  1.2712 -"You'll often want all of your bugfixes on the stable branch to show up on the "
  1.2713 -"main branch, too.  Rather than rewrite a bugfix on the main branch, you can "
  1.2714 +#: ../en/ch05-collab.xml:292
  1.2715 +msgid ""
  1.2716 +"We'll often want all of our bugfixes on the stable branch to show up on the "
  1.2717 +"main branch, too.  Rather than rewrite a bugfix on the main branch, we can "
  1.2718  "simply pull and merge changes from the stable to the main branch, and "
  1.2719 -"Mercurial will bring those bugfixes in for you."
  1.2720 -msgstr ""
  1.2721 -
  1.2722 -#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2723 -#: ../en/ch05-collab.xml:256
  1.2724 +"Mercurial will bring those bugfixes in for us."
  1.2725 +msgstr ""
  1.2726 +
  1.2727 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.2728 +#: ../en/ch05-collab.xml:300
  1.2729  msgid ""
  1.2730  "The main branch will still contain changes that are not on the stable branch, "
  1.2731  "but it will also contain all of the bugfixes from the stable branch.  The "
  1.2732 -"stable branch remains unaffected by these changes."
  1.2733 +"stable branch remains unaffected by these changes, since changes are only "
  1.2734 +"flowing from the stable to the main branch, and not the other way."
  1.2735  msgstr ""
  1.2736  
  1.2737  #. type: Content of: <book><chapter><sect1><sect2><figure><title>
  1.2738 -#: ../en/ch05-collab.xml:263 ../en/ch05-collab.xml:273
  1.2739 +#: ../en/ch05-collab.xml:309 ../en/ch05-collab.xml:319
  1.2740  msgid "Feature branches"
  1.2741  msgstr "特性分支"
  1.2742  
  1.2743  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2744 -#: ../en/ch05-collab.xml:265
  1.2745 +#: ../en/ch05-collab.xml:311
  1.2746  msgid ""
  1.2747  "For larger projects, an effective way to manage change is to break up a team "
  1.2748  "into smaller groups.  Each group has a shared branch of its own, cloned from "
  1.2749 @@ -5927,14 +6201,14 @@
  1.2750  msgstr ""
  1.2751  
  1.2752  #. type: Content of: <book><chapter><sect1><sect2><figure><mediaobject>
  1.2753 -#: ../en/ch05-collab.xml:275
  1.2754 +#: ../en/ch05-collab.xml:321
  1.2755  msgid ""
  1.2756  "<imageobject><imagedata width=\"100%\" fileref=\"figs/feature-branches.png\"/"
  1.2757  "></imageobject>"
  1.2758  msgstr ""
  1.2759  
  1.2760  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2761 -#: ../en/ch05-collab.xml:280
  1.2762 +#: ../en/ch05-collab.xml:326
  1.2763  msgid ""
  1.2764  "When a particular feature is deemed to be in suitable shape, someone on that "
  1.2765  "feature team pulls and merges from the master branch into the feature branch, "
  1.2766 @@ -5942,20 +6216,20 @@
  1.2767  msgstr ""
  1.2768  
  1.2769  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.2770 -#: ../en/ch05-collab.xml:287
  1.2771 +#: ../en/ch05-collab.xml:333
  1.2772  msgid "The release train"
  1.2773  msgstr "发布列车"
  1.2774  
  1.2775  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2776 -#: ../en/ch05-collab.xml:289
  1.2777 -msgid ""
  1.2778 -"Some projects are organised on a <quote>train</quote> basis: a release is "
  1.2779 +#: ../en/ch05-collab.xml:335
  1.2780 +msgid ""
  1.2781 +"Some projects are organized on a <quote>train</quote> basis: a release is "
  1.2782  "scheduled to happen every few months, and whatever features are ready when "
  1.2783  "the <quote>train</quote> is ready to leave are allowed in."
  1.2784  msgstr ""
  1.2785  
  1.2786  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2787 -#: ../en/ch05-collab.xml:294
  1.2788 +#: ../en/ch05-collab.xml:340
  1.2789  msgid ""
  1.2790  "This model resembles working with feature branches.  The difference is that "
  1.2791  "when a feature branch misses a train, someone on the feature team pulls and "
  1.2792 @@ -5965,12 +6239,12 @@
  1.2793  msgstr ""
  1.2794  
  1.2795  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.2796 -#: ../en/ch05-collab.xml:303
  1.2797 +#: ../en/ch05-collab.xml:349
  1.2798  msgid "The Linux kernel model"
  1.2799  msgstr "Linux 内核模型"
  1.2800  
  1.2801  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2802 -#: ../en/ch05-collab.xml:305
  1.2803 +#: ../en/ch05-collab.xml:351
  1.2804  msgid ""
  1.2805  "The development of the Linux kernel has a shallow hierarchical structure, "
  1.2806  "surrounded by a cloud of apparent chaos.  Because most Linux developers use "
  1.2807 @@ -5980,7 +6254,7 @@
  1.2808  msgstr ""
  1.2809  
  1.2810  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2811 -#: ../en/ch05-collab.xml:313
  1.2812 +#: ../en/ch05-collab.xml:359
  1.2813  msgid ""
  1.2814  "At the center of the community sits Linus Torvalds, the creator of Linux.  He "
  1.2815  "publishes a single source repository that is considered the "
  1.2816 @@ -5990,7 +6264,7 @@
  1.2817  msgstr ""
  1.2818  
  1.2819  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2820 -#: ../en/ch05-collab.xml:320
  1.2821 +#: ../en/ch05-collab.xml:366
  1.2822  msgid ""
  1.2823  "Linus has a number of <quote>trusted lieutenants</quote>.  As a general rule, "
  1.2824  "he pulls whatever changes they publish, in most cases without even reviewing "
  1.2825 @@ -6004,7 +6278,7 @@
  1.2826  msgstr ""
  1.2827  
  1.2828  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2829 -#: ../en/ch05-collab.xml:332
  1.2830 +#: ../en/ch05-collab.xml:378
  1.2831  msgid ""
  1.2832  "Individual lieutenants have their own approaches to reviewing, accepting, and "
  1.2833  "publishing changes; and for deciding when to feed them to Linus.  In "
  1.2834 @@ -6017,7 +6291,7 @@
  1.2835  msgstr ""
  1.2836  
  1.2837  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2838 -#: ../en/ch05-collab.xml:343
  1.2839 +#: ../en/ch05-collab.xml:389
  1.2840  msgid ""
  1.2841  "This model has two notable features.  The first is that it's <quote>pull "
  1.2842  "only</quote>.  You have to ask, convince, or beg another developer to take a "
  1.2843 @@ -6027,7 +6301,7 @@
  1.2844  msgstr ""
  1.2845  
  1.2846  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2847 -#: ../en/ch05-collab.xml:350
  1.2848 +#: ../en/ch05-collab.xml:396
  1.2849  msgid ""
  1.2850  "The second is that it's based on reputation and acclaim.  If you're an "
  1.2851  "unknown, Linus will probably ignore changes from you without even "
  1.2852 @@ -6041,7 +6315,7 @@
  1.2853  msgstr ""
  1.2854  
  1.2855  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2856 -#: ../en/ch05-collab.xml:361
  1.2857 +#: ../en/ch05-collab.xml:407
  1.2858  msgid ""
  1.2859  "Reputation and acclaim don't necessarily cross subsystem or <quote>people</"
  1.2860  "quote> boundaries.  If you're a respected but specialised storage hacker, and "
  1.2861 @@ -6050,7 +6324,7 @@
  1.2862  msgstr ""
  1.2863  
  1.2864  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2865 -#: ../en/ch05-collab.xml:368
  1.2866 +#: ../en/ch05-collab.xml:414
  1.2867  msgid ""
  1.2868  "To people who come from more orderly project backgrounds, the comparatively "
  1.2869  "chaotic Linux kernel development process often seems completely insane.  It's "
  1.2870 @@ -6060,12 +6334,12 @@
  1.2871  msgstr ""
  1.2872  
  1.2873  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.2874 -#: ../en/ch05-collab.xml:378
  1.2875 +#: ../en/ch05-collab.xml:424
  1.2876  msgid "Pull-only versus shared-push collaboration"
  1.2877  msgstr "只读与共享写协作"
  1.2878  
  1.2879  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2880 -#: ../en/ch05-collab.xml:380
  1.2881 +#: ../en/ch05-collab.xml:426
  1.2882  msgid ""
  1.2883  "A perpetual source of heat in the open source community is whether a "
  1.2884  "development model in which people only ever pull changes from others is "
  1.2885 @@ -6074,7 +6348,7 @@
  1.2886  msgstr ""
  1.2887  
  1.2888  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2889 -#: ../en/ch05-collab.xml:386
  1.2890 +#: ../en/ch05-collab.xml:432
  1.2891  msgid ""
  1.2892  "Typically, the backers of the shared-push model use tools that actively "
  1.2893  "enforce this approach.  If you're using a centralised revision control tool "
  1.2894 @@ -6085,21 +6359,20 @@
  1.2895  msgstr ""
  1.2896  
  1.2897  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2898 -#: ../en/ch05-collab.xml:394
  1.2899 -msgid ""
  1.2900 -"A good distributed revision control tool, such as Mercurial, will support "
  1.2901 -"both models.  You and your collaborators can then structure how you work "
  1.2902 -"together based on your own needs and preferences, not on what contortions "
  1.2903 -"your tools force you into."
  1.2904 -msgstr ""
  1.2905 -
  1.2906 -#. type: Content of: <book><chapter><sect1><sect2><title>
  1.2907 -#: ../en/ch05-collab.xml:402
  1.2908 +#: ../en/ch05-collab.xml:440
  1.2909 +msgid ""
  1.2910 +"A good distributed revision control tool will support both models.  You and "
  1.2911 +"your collaborators can then structure how you work together based on your own "
  1.2912 +"needs and preferences, not on what contortions your tools force you into."
  1.2913 +msgstr ""
  1.2914 +
  1.2915 +#. type: Content of: <book><chapter><sect1><sect2><title>
  1.2916 +#: ../en/ch05-collab.xml:447
  1.2917  msgid "Where collaboration meets branch management"
  1.2918  msgstr "协作与分支管理"
  1.2919  
  1.2920  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.2921 -#: ../en/ch05-collab.xml:404
  1.2922 +#: ../en/ch05-collab.xml:449
  1.2923  msgid ""
  1.2924  "Once you and your team set up some shared repositories and start propagating "
  1.2925  "changes back and forth between local and shared repos, you begin to face a "
  1.2926 @@ -6110,24 +6383,24 @@
  1.2927  msgstr ""
  1.2928  
  1.2929  #. type: Content of: <book><chapter><sect1><title>
  1.2930 -#: ../en/ch05-collab.xml:416
  1.2931 +#: ../en/ch05-collab.xml:461
  1.2932  msgid "The technical side of sharing"
  1.2933  msgstr "共享的技术因素"
  1.2934  
  1.2935  #. type: Content of: <book><chapter><sect1><para>
  1.2936 -#: ../en/ch05-collab.xml:418
  1.2937 -msgid ""
  1.2938 -"The remainder of this chapter is devoted to the question of serving data to "
  1.2939 -"your collaborators."
  1.2940 +#: ../en/ch05-collab.xml:463
  1.2941 +msgid ""
  1.2942 +"The remainder of this chapter is devoted to the question of sharing changes "
  1.2943 +"with your collaborators."
  1.2944  msgstr ""
  1.2945  
  1.2946  #. type: Content of: <book><chapter><sect1><title>
  1.2947 -#: ../en/ch05-collab.xml:423
  1.2948 +#: ../en/ch05-collab.xml:468
  1.2949  msgid "Informal sharing with <command role=\"hg-cmd\">hg serve</command>"
  1.2950  msgstr "使用 <command role=\"hg-cmd\">hg serve</command> 进行非正式共享"
  1.2951  
  1.2952  #. type: Content of: <book><chapter><sect1><para>
  1.2953 -#: ../en/ch05-collab.xml:426
  1.2954 +#: ../en/ch05-collab.xml:471
  1.2955  msgid ""
  1.2956  "Mercurial's <command role=\"hg-cmd\">hg serve</command> command is "
  1.2957  "wonderfully suited to small, tight-knit, and fast-paced group environments.  "
  1.2958 @@ -6136,7 +6409,7 @@
  1.2959  msgstr ""
  1.2960  
  1.2961  #. type: Content of: <book><chapter><sect1><para>
  1.2962 -#: ../en/ch05-collab.xml:431
  1.2963 +#: ../en/ch05-collab.xml:476
  1.2964  msgid ""
  1.2965  "Run <command role=\"hg-cmd\">hg serve</command> inside a repository, and in "
  1.2966  "under a second it will bring up a specialised HTTP server; this will accept "
  1.2967 @@ -6149,21 +6422,21 @@
  1.2968  msgstr ""
  1.2969  
  1.2970  #. type: Content of: <book><chapter><sect1><para>
  1.2971 -#: ../en/ch05-collab.xml:442
  1.2972 +#: ../en/ch05-collab.xml:487
  1.2973  msgid ""
  1.2974  "The <command role=\"hg-cmd\">hg serve</command> command is <emphasis>not</"
  1.2975  "emphasis> a general-purpose web server. It can do only two things:"
  1.2976  msgstr ""
  1.2977  
  1.2978  #. type: Content of: <book><chapter><sect1><itemizedlist><listitem><para>
  1.2979 -#: ../en/ch05-collab.xml:446
  1.2980 +#: ../en/ch05-collab.xml:491
  1.2981  msgid ""
  1.2982  "Allow people to browse the history of the repository it's serving, from their "
  1.2983  "normal web browsers."
  1.2984  msgstr ""
  1.2985  
  1.2986  #. type: Content of: <book><chapter><sect1><itemizedlist><listitem><para>
  1.2987 -#: ../en/ch05-collab.xml:450
  1.2988 +#: ../en/ch05-collab.xml:495
  1.2989  msgid ""
  1.2990  "Speak Mercurial's wire protocol, so that people can <command role=\"hg-cmd"
  1.2991  "\">hg clone</command> or <command role=\"hg-cmd\">hg pull</command> changes "
  1.2992 @@ -6171,7 +6444,7 @@
  1.2993  msgstr ""
  1.2994  
  1.2995  #. type: Content of: <book><chapter><sect1><para>
  1.2996 -#: ../en/ch05-collab.xml:455
  1.2997 +#: ../en/ch05-collab.xml:500
  1.2998  msgid ""
  1.2999  "In particular, <command role=\"hg-cmd\">hg serve</command> won't allow remote "
  1.3000  "users to <emphasis>modify</emphasis> your repository.  It's intended for read-"
  1.3001 @@ -6179,7 +6452,7 @@
  1.3002  msgstr ""
  1.3003  
  1.3004  #. type: Content of: <book><chapter><sect1><para>
  1.3005 -#: ../en/ch05-collab.xml:459
  1.3006 +#: ../en/ch05-collab.xml:504
  1.3007  msgid ""
  1.3008  "If you're getting started with Mercurial, there's nothing to prevent you from "
  1.3009  "using <command role=\"hg-cmd\">hg serve</command> to serve up a repository on "
  1.3010 @@ -6190,12 +6463,12 @@
  1.3011  msgstr ""
  1.3012  
  1.3013  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.3014 -#: ../en/ch05-collab.xml:469
  1.3015 +#: ../en/ch05-collab.xml:514
  1.3016  msgid "A few things to keep in mind"
  1.3017  msgstr "要牢记的几件事"
  1.3018  
  1.3019  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3020 -#: ../en/ch05-collab.xml:471
  1.3021 +#: ../en/ch05-collab.xml:516
  1.3022  msgid ""
  1.3023  "Because it provides unauthenticated read access to all clients, you should "
  1.3024  "only use <command role=\"hg-cmd\">hg serve</command> in an environment where "
  1.3025 @@ -6204,7 +6477,7 @@
  1.3026  msgstr ""
  1.3027  
  1.3028  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3029 -#: ../en/ch05-collab.xml:477
  1.3030 +#: ../en/ch05-collab.xml:522
  1.3031  msgid ""
  1.3032  "The <command role=\"hg-cmd\">hg serve</command> command knows nothing about "
  1.3033  "any firewall software you might have installed on your system or network.  It "
  1.3034 @@ -6215,7 +6488,7 @@
  1.3035  msgstr ""
  1.3036  
  1.3037  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3038 -#: ../en/ch05-collab.xml:486
  1.3039 +#: ../en/ch05-collab.xml:531
  1.3040  msgid ""
  1.3041  "By default, <command role=\"hg-cmd\">hg serve</command> listens for incoming "
  1.3042  "connections on port 8000.  If another process is already listening on the "
  1.3043 @@ -6224,7 +6497,7 @@
  1.3044  msgstr ""
  1.3045  
  1.3046  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3047 -#: ../en/ch05-collab.xml:492
  1.3048 +#: ../en/ch05-collab.xml:537
  1.3049  msgid ""
  1.3050  "Normally, when <command role=\"hg-cmd\">hg serve</command> starts, it prints "
  1.3051  "no output, which can be a bit unnerving.  If you'd like to confirm that it is "
  1.3052 @@ -6234,12 +6507,12 @@
  1.3053  msgstr ""
  1.3054  
  1.3055  #. type: Content of: <book><chapter><sect1><title>
  1.3056 -#: ../en/ch05-collab.xml:502
  1.3057 +#: ../en/ch05-collab.xml:547
  1.3058  msgid "Using the Secure Shell (ssh) protocol"
  1.3059  msgstr "使用 ssh 协议"
  1.3060  
  1.3061  #. type: Content of: <book><chapter><sect1><para>
  1.3062 -#: ../en/ch05-collab.xml:504
  1.3063 +#: ../en/ch05-collab.xml:549
  1.3064  msgid ""
  1.3065  "You can pull and push changes securely over a network connection using the "
  1.3066  "Secure Shell (<literal>ssh</literal>)  protocol.  To use this successfully, "
  1.3067 @@ -6248,40 +6521,40 @@
  1.3068  msgstr ""
  1.3069  
  1.3070  #. type: Content of: <book><chapter><sect1><para>
  1.3071 -#: ../en/ch05-collab.xml:509
  1.3072 -msgid ""
  1.3073 -"If you're not familiar with ssh, it's a network protocol that lets you "
  1.3074 -"securely communicate with another computer.  To use it with Mercurial, you'll "
  1.3075 -"be setting up one or more user accounts on a server so that remote users can "
  1.3076 -"log in and execute commands."
  1.3077 -msgstr ""
  1.3078 -
  1.3079 -#. type: Content of: <book><chapter><sect1><para>
  1.3080 -#: ../en/ch05-collab.xml:515
  1.3081 +#: ../en/ch05-collab.xml:554
  1.3082 +msgid ""
  1.3083 +"If you're not familiar with ssh, it's the name of both a command and a "
  1.3084 +"network protocol that let you securely communicate with another computer.  To "
  1.3085 +"use it with Mercurial, you'll be setting up one or more user accounts on a "
  1.3086 +"server so that remote users can log in and execute commands."
  1.3087 +msgstr ""
  1.3088 +
  1.3089 +#. type: Content of: <book><chapter><sect1><para>
  1.3090 +#: ../en/ch05-collab.xml:560
  1.3091  msgid ""
  1.3092  "(If you <emphasis>are</emphasis> familiar with ssh, you'll probably find some "
  1.3093  "of the material that follows to be elementary in nature.)"
  1.3094  msgstr ""
  1.3095  
  1.3096  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.3097 -#: ../en/ch05-collab.xml:520
  1.3098 +#: ../en/ch05-collab.xml:565
  1.3099  msgid "How to read and write ssh URLs"
  1.3100  msgstr "如何读写 ssh 路径"
  1.3101  
  1.3102  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3103 -#: ../en/ch05-collab.xml:522
  1.3104 +#: ../en/ch05-collab.xml:567
  1.3105  msgid "An ssh URL tends to look like this:"
  1.3106  msgstr ""
  1.3107  
  1.3108  #. type: Content of: <book><chapter><sect1><sect2><orderedlist><listitem><para>
  1.3109 -#: ../en/ch05-collab.xml:525
  1.3110 +#: ../en/ch05-collab.xml:570
  1.3111  msgid ""
  1.3112  "The <quote><literal>ssh://</literal></quote> part tells Mercurial to use the "
  1.3113  "ssh protocol."
  1.3114  msgstr ""
  1.3115  
  1.3116  #. type: Content of: <book><chapter><sect1><sect2><orderedlist><listitem><para>
  1.3117 -#: ../en/ch05-collab.xml:528
  1.3118 +#: ../en/ch05-collab.xml:573
  1.3119  msgid ""
  1.3120  "The <quote><literal>bos@</literal></quote> component indicates what username "
  1.3121  "to log into the server as.  You can leave this out if the remote username is "
  1.3122 @@ -6289,14 +6562,14 @@
  1.3123  msgstr ""
  1.3124  
  1.3125  #. type: Content of: <book><chapter><sect1><sect2><orderedlist><listitem><para>
  1.3126 -#: ../en/ch05-collab.xml:533
  1.3127 +#: ../en/ch05-collab.xml:578
  1.3128  msgid ""
  1.3129  "The <quote><literal>hg.serpentine.com</literal></quote> gives the hostname of "
  1.3130  "the server to log into."
  1.3131  msgstr ""
  1.3132  
  1.3133  #. type: Content of: <book><chapter><sect1><sect2><orderedlist><listitem><para>
  1.3134 -#: ../en/ch05-collab.xml:537
  1.3135 +#: ../en/ch05-collab.xml:582
  1.3136  msgid ""
  1.3137  "The <quote>:22</quote> identifies the port number to connect to the server "
  1.3138  "on.  The default port is 22, so you only need to specify a colon and port "
  1.3139 @@ -6304,13 +6577,13 @@
  1.3140  msgstr ""
  1.3141  
  1.3142  #. type: Content of: <book><chapter><sect1><sect2><orderedlist><listitem><para>
  1.3143 -#: ../en/ch05-collab.xml:542
  1.3144 +#: ../en/ch05-collab.xml:587
  1.3145  msgid ""
  1.3146  "The remainder of the URL is the local path to the repository on the server."
  1.3147  msgstr ""
  1.3148  
  1.3149  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3150 -#: ../en/ch05-collab.xml:546
  1.3151 +#: ../en/ch05-collab.xml:591
  1.3152  msgid ""
  1.3153  "There's plenty of scope for confusion with the path component of ssh URLs, as "
  1.3154  "there is no standard way for tools to interpret it.  Some programs behave "
  1.3155 @@ -6320,7 +6593,7 @@
  1.3156  msgstr ""
  1.3157  
  1.3158  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3159 -#: ../en/ch05-collab.xml:553
  1.3160 +#: ../en/ch05-collab.xml:598
  1.3161  msgid ""
  1.3162  "Mercurial treats the path to a repository on the server as relative to the "
  1.3163  "remote user's home directory.  For example, if user <literal>foo</literal> on "
  1.3164 @@ -6331,7 +6604,7 @@
  1.3165  msgstr ""
  1.3166  
  1.3167  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3168 -#: ../en/ch05-collab.xml:562
  1.3169 +#: ../en/ch05-collab.xml:607
  1.3170  msgid ""
  1.3171  "If you want to specify a path relative to another user's home directory, you "
  1.3172  "can use a path that starts with a tilde character followed by the user's name "
  1.3173 @@ -6339,19 +6612,19 @@
  1.3174  msgstr ""
  1.3175  
  1.3176  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3177 -#: ../en/ch05-collab.xml:568
  1.3178 +#: ../en/ch05-collab.xml:613
  1.3179  msgid ""
  1.3180  "And if you really want to specify an <emphasis>absolute</emphasis> path on "
  1.3181  "the server, begin the path component with two slashes, as in this example."
  1.3182  msgstr ""
  1.3183  
  1.3184  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.3185 -#: ../en/ch05-collab.xml:575
  1.3186 +#: ../en/ch05-collab.xml:620
  1.3187  msgid "Finding an ssh client for your system"
  1.3188  msgstr "为你的系统寻找 ssh 客户端"
  1.3189  
  1.3190  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3191 -#: ../en/ch05-collab.xml:577
  1.3192 +#: ../en/ch05-collab.xml:622
  1.3193  msgid ""
  1.3194  "Almost every Unix-like system comes with OpenSSH preinstalled.  If you're "
  1.3195  "using such a system, run <literal>which ssh</literal> to find out if the "
  1.3196 @@ -6362,60 +6635,58 @@
  1.3197  msgstr ""
  1.3198  
  1.3199  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3200 -#: ../en/ch05-collab.xml:585
  1.3201 -msgid ""
  1.3202 -"On Windows, you'll first need to download a suitable ssh client.  There are "
  1.3203 -"two alternatives."
  1.3204 -msgstr ""
  1.3205 -
  1.3206 -#. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.3207 -#: ../en/ch05-collab.xml:588
  1.3208 -msgid ""
  1.3209 -"Simon Tatham's excellent PuTTY package <citation>web:putty</citation> "
  1.3210 -"provides a complete suite of ssh client commands."
  1.3211 -msgstr ""
  1.3212 -
  1.3213 -#. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.3214 -#: ../en/ch05-collab.xml:592
  1.3215 -msgid ""
  1.3216 -"If you have a high tolerance for pain, you can use the Cygwin port of OpenSSH."
  1.3217 -msgstr ""
  1.3218 -
  1.3219 -#. type: Content of: <book><chapter><sect1><sect2><para>
  1.3220 -#: ../en/ch05-collab.xml:595
  1.3221 -msgid ""
  1.3222 -"In either case, you'll need to edit your <filename role=\"special\">hg.ini</"
  1.3223 -"filename> file to tell Mercurial where to find the actual client command.  "
  1.3224 -"For example, if you're using PuTTY, you'll need to use the <command>plink</"
  1.3225 -"command> command as a command-line ssh client."
  1.3226 -msgstr ""
  1.3227 -
  1.3228 -#. type: Content of: <book><chapter><sect1><sect2><note><para>
  1.3229 -#: ../en/ch05-collab.xml:605
  1.3230 -msgid ""
  1.3231 -"The path to <command>plink</command> shouldn't contain any whitespace "
  1.3232 -"characters, or Mercurial may not be able to run it correctly (so putting it "
  1.3233 -"in <filename class=\"directory\">C:\\Program Files</filename> is probably not "
  1.3234 -"a good idea)."
  1.3235 -msgstr ""
  1.3236 -
  1.3237 -#. type: Content of: <book><chapter><sect1><sect2><title>
  1.3238 -#: ../en/ch05-collab.xml:614
  1.3239 +#: ../en/ch05-collab.xml:630
  1.3240 +msgid ""
  1.3241 +"On Windows, the TortoiseHg package is bundled with a version of Simon "
  1.3242 +"Tatham's excellent <command>plink</command> command, and you should not need "
  1.3243 +"to do any further configuration."
  1.3244 +msgstr ""
  1.3245 +
  1.3246 +#. type: Content of: <book><chapter><sect1><sect2><title>
  1.3247 +#: ../en/ch05-collab.xml:637
  1.3248  msgid "Generating a key pair"
  1.3249  msgstr "产生密钥对"
  1.3250  
  1.3251  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3252 -#: ../en/ch05-collab.xml:616
  1.3253 +#: ../en/ch05-collab.xml:639
  1.3254  msgid ""
  1.3255  "To avoid the need to repetitively type a password every time you need to use "
  1.3256 -"your ssh client, I recommend generating a key pair.  On a Unix-like system, "
  1.3257 -"the <command>ssh-keygen</command> command will do the trick. On Windows, if "
  1.3258 -"you're using PuTTY, the <command>puttygen</command> command is what you'll "
  1.3259 -"need."
  1.3260 -msgstr ""
  1.3261 -
  1.3262 -#. type: Content of: <book><chapter><sect1><sect2><para>
  1.3263 -#: ../en/ch05-collab.xml:624
  1.3264 +"your ssh client, I recommend generating a key pair."
  1.3265 +msgstr ""
  1.3266 +
  1.3267 +#. type: Content of: <book><chapter><sect1><sect2><tip><title>
  1.3268 +#: ../en/ch05-collab.xml:644
  1.3269 +msgid "Key pairs are not mandatory"
  1.3270 +msgstr ""
  1.3271 +
  1.3272 +#. type: Content of: <book><chapter><sect1><sect2><tip><para>
  1.3273 +#: ../en/ch05-collab.xml:646
  1.3274 +msgid ""
  1.3275 +"Mercurial knows nothing about ssh authentication or key pairs.  You can, if "
  1.3276 +"you like, safely ignore this section and the one that follows until you grow "
  1.3277 +"tired of repeatedly typing ssh passwords."
  1.3278 +msgstr ""
  1.3279 +
  1.3280 +#. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.3281 +#: ../en/ch05-collab.xml:654
  1.3282 +msgid ""
  1.3283 +"On a Unix-like system, the <command>ssh-keygen</command> command will do the "
  1.3284 +"trick."
  1.3285 +msgstr ""
  1.3286 +
  1.3287 +#. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.3288 +#: ../en/ch05-collab.xml:657
  1.3289 +msgid ""
  1.3290 +"On Windows, if you're using TortoiseHg, you may need to download a command "
  1.3291 +"named <command>puttygen</command> from <ulink url=\"http://www.chiark."
  1.3292 +"greenend.org.uk/~sgtatham/putty\">the PuTTY web site</ulink> to generate a "
  1.3293 +"key pair.  See <ulink url=\"http://the.earth.li/~sgtatham/putty/0.60/htmldoc/"
  1.3294 +"Chapter8.html#pubkey-puttygen\">the <command>puttygen</command> "
  1.3295 +"documentation</ulink> for details of how use the command."
  1.3296 +msgstr ""
  1.3297 +
  1.3298 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.3299 +#: ../en/ch05-collab.xml:669
  1.3300  msgid ""
  1.3301  "When you generate a key pair, it's usually <emphasis>highly</emphasis> "
  1.3302  "advisable to protect it with a passphrase.  (The only time that you might not "
  1.3303 @@ -6424,7 +6695,7 @@
  1.3304  msgstr ""
  1.3305  
  1.3306  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3307 -#: ../en/ch05-collab.xml:630
  1.3308 +#: ../en/ch05-collab.xml:675
  1.3309  msgid ""
  1.3310  "Simply generating a key pair isn't enough, however.  You'll need to add the "
  1.3311  "public key to the set of authorised keys for whatever user you're logging in "
  1.3312 @@ -6435,7 +6706,7 @@
  1.3313  msgstr ""
  1.3314  
  1.3315  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3316 -#: ../en/ch05-collab.xml:639
  1.3317 +#: ../en/ch05-collab.xml:684
  1.3318  msgid ""
  1.3319  "On a Unix-like system, your public key will have a <filename>.pub</filename> "
  1.3320  "extension.  If you're using <command>puttygen</command> on Windows, you can "
  1.3321 @@ -6445,12 +6716,12 @@
  1.3322  msgstr ""
  1.3323  
  1.3324  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.3325 -#: ../en/ch05-collab.xml:648
  1.3326 +#: ../en/ch05-collab.xml:692
  1.3327  msgid "Using an authentication agent"
  1.3328  msgstr "使用认证代理"
  1.3329  
  1.3330  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3331 -#: ../en/ch05-collab.xml:650
  1.3332 +#: ../en/ch05-collab.xml:694
  1.3333  msgid ""
  1.3334  "An authentication agent is a daemon that stores passphrases in memory (so it "
  1.3335  "will forget passphrases if you log out and log back in again). An ssh client "
  1.3336 @@ -6462,7 +6733,7 @@
  1.3337  msgstr ""
  1.3338  
  1.3339  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3340 -#: ../en/ch05-collab.xml:659
  1.3341 +#: ../en/ch05-collab.xml:703
  1.3342  msgid ""
  1.3343  "The downside of storing passphrases in an agent is that it's possible for a "
  1.3344  "well-prepared attacker to recover the plain text of your passphrases, in some "
  1.3345 @@ -6471,34 +6742,44 @@
  1.3346  "of repeated typing."
  1.3347  msgstr ""
  1.3348  
  1.3349 -#. type: Content of: <book><chapter><sect1><sect2><para>
  1.3350 -#: ../en/ch05-collab.xml:666
  1.3351 +#. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.3352 +#: ../en/ch05-collab.xml:712
  1.3353  msgid ""
  1.3354  "On Unix-like systems, the agent is called <command>ssh-agent</command>, and "
  1.3355  "it's often run automatically for you when you log in.  You'll need to use the "
  1.3356 -"<command>ssh-add</command> command to add passphrases to the agent's store.  "
  1.3357 -"On Windows, if you're using PuTTY, the <command>pageant</command> command "
  1.3358 -"acts as the agent.  It adds an icon to your system tray that will let you "
  1.3359 -"manage stored passphrases."
  1.3360 -msgstr ""
  1.3361 -
  1.3362 -#. type: Content of: <book><chapter><sect1><sect2><title>
  1.3363 -#: ../en/ch05-collab.xml:677
  1.3364 +"<command>ssh-add</command> command to add passphrases to the agent's store."
  1.3365 +msgstr ""
  1.3366 +
  1.3367 +#. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.3368 +#: ../en/ch05-collab.xml:719
  1.3369 +msgid ""
  1.3370 +"On Windows, if you're using TortoiseHg, the <command>pageant</command> "
  1.3371 +"command acts as the agent.  As with <command>puttygen</command>, you'll need "
  1.3372 +"to <ulink url=\"http://www.chiark.greenend.org.uk/%7Esgtatham/putty/download."
  1.3373 +"html\">download <command>pageant</command></ulink> from the PuTTY web site "
  1.3374 +"and read <ulink url=\"http://the.earth.li/~sgtatham/putty/0.60/htmldoc/"
  1.3375 +"Chapter9.html#pageant\">its documentation</ulink>.  The <command>pageant</"
  1.3376 +"command> command adds an icon to your system tray that will let you manage "
  1.3377 +"stored passphrases."
  1.3378 +msgstr ""
  1.3379 +
  1.3380 +#. type: Content of: <book><chapter><sect1><sect2><title>
  1.3381 +#: ../en/ch05-collab.xml:734
  1.3382  msgid "Configuring the server side properly"
  1.3383  msgstr "正确配置服务器端"
  1.3384  
  1.3385  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3386 -#: ../en/ch05-collab.xml:679
  1.3387 -msgid ""
  1.3388 -"Because ssh can be fiddly to set up if you're new to it, there's a variety of "
  1.3389 -"things that can go wrong.  Add Mercurial on top, and there's plenty more "
  1.3390 -"scope for head-scratching.  Most of these potential problems occur on the "
  1.3391 -"server side, not the client side.  The good news is that once you've gotten a "
  1.3392 -"configuration working, it will usually continue to work indefinitely."
  1.3393 -msgstr ""
  1.3394 -
  1.3395 -#. type: Content of: <book><chapter><sect1><sect2><para>
  1.3396 -#: ../en/ch05-collab.xml:687
  1.3397 +#: ../en/ch05-collab.xml:736
  1.3398 +msgid ""
  1.3399 +"Because ssh can be fiddly to set up if you're new to it, a variety of things "
  1.3400 +"can go wrong.  Add Mercurial on top, and there's plenty more scope for head-"
  1.3401 +"scratching.  Most of these potential problems occur on the server side, not "
  1.3402 +"the client side.  The good news is that once you've gotten a configuration "
  1.3403 +"working, it will usually continue to work indefinitely."
  1.3404 +msgstr ""
  1.3405 +
  1.3406 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.3407 +#: ../en/ch05-collab.xml:744
  1.3408  msgid ""
  1.3409  "Before you try using Mercurial to talk to an ssh server, it's best to make "
  1.3410  "sure that you can use the normal <command>ssh</command> or <command>putty</"
  1.3411 @@ -6511,7 +6792,7 @@
  1.3412  msgstr ""
  1.3413  
  1.3414  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3415 -#: ../en/ch05-collab.xml:698
  1.3416 +#: ../en/ch05-collab.xml:755
  1.3417  msgid ""
  1.3418  "The first thing to be sure of on the server side is that you can actually log "
  1.3419  "in from another machine at all.  If you can't use <command>ssh</command> or "
  1.3420 @@ -6520,7 +6801,7 @@
  1.3421  msgstr ""
  1.3422  
  1.3423  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.3424 -#: ../en/ch05-collab.xml:705
  1.3425 +#: ../en/ch05-collab.xml:762
  1.3426  msgid ""
  1.3427  "If you get a <quote>connection refused</quote> error, either there isn't an "
  1.3428  "SSH daemon running on the server at all, or it's inaccessible due to firewall "
  1.3429 @@ -6528,7 +6809,7 @@
  1.3430  msgstr ""
  1.3431  
  1.3432  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.3433 -#: ../en/ch05-collab.xml:710
  1.3434 +#: ../en/ch05-collab.xml:767
  1.3435  msgid ""
  1.3436  "If you get a <quote>no route to host</quote> error, you either have an "
  1.3437  "incorrect address for the server or a seriously locked down firewall that "
  1.3438 @@ -6536,7 +6817,7 @@
  1.3439  msgstr ""
  1.3440  
  1.3441  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.3442 -#: ../en/ch05-collab.xml:715
  1.3443 +#: ../en/ch05-collab.xml:772
  1.3444  msgid ""
  1.3445  "If you get a <quote>permission denied</quote> error, you may have mistyped "
  1.3446  "the username on the server, or you could have mistyped your key's passphrase "
  1.3447 @@ -6544,7 +6825,7 @@
  1.3448  msgstr ""
  1.3449  
  1.3450  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3451 -#: ../en/ch05-collab.xml:720
  1.3452 +#: ../en/ch05-collab.xml:777
  1.3453  msgid ""
  1.3454  "In summary, if you're having trouble talking to the server's ssh daemon, "
  1.3455  "first make sure that one is running at all.  On many systems it will be "
  1.3456 @@ -6556,7 +6837,7 @@
  1.3457  msgstr ""
  1.3458  
  1.3459  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3460 -#: ../en/ch05-collab.xml:730
  1.3461 +#: ../en/ch05-collab.xml:787
  1.3462  msgid ""
  1.3463  "If you're using an authentication agent on the client side to store "
  1.3464  "passphrases for your keys, you ought to be able to log into the server "
  1.3465 @@ -6565,26 +6846,26 @@
  1.3466  msgstr ""
  1.3467  
  1.3468  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.3469 -#: ../en/ch05-collab.xml:736
  1.3470 +#: ../en/ch05-collab.xml:793
  1.3471  msgid ""
  1.3472  "You might have forgotten to use <command>ssh-add</command> or "
  1.3473  "<command>pageant</command> to store the passphrase."
  1.3474  msgstr ""
  1.3475  
  1.3476  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.3477 -#: ../en/ch05-collab.xml:740
  1.3478 +#: ../en/ch05-collab.xml:797
  1.3479  msgid "You might have stored the passphrase for the wrong key."
  1.3480  msgstr ""
  1.3481  
  1.3482  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3483 -#: ../en/ch05-collab.xml:743
  1.3484 +#: ../en/ch05-collab.xml:800
  1.3485  msgid ""
  1.3486  "If you're being prompted for the remote user's password, there are another "
  1.3487  "few possible problems to check."
  1.3488  msgstr ""
  1.3489  
  1.3490  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.3491 -#: ../en/ch05-collab.xml:746
  1.3492 +#: ../en/ch05-collab.xml:803
  1.3493  msgid ""
  1.3494  "Either the user's home directory or their <filename role=\"special\" class="
  1.3495  "\"directory\">.ssh</filename> directory might have excessively liberal "
  1.3496 @@ -6595,7 +6876,7 @@
  1.3497  msgstr ""
  1.3498  
  1.3499  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.3500 -#: ../en/ch05-collab.xml:755
  1.3501 +#: ../en/ch05-collab.xml:812
  1.3502  msgid ""
  1.3503  "The user's <filename role=\"special\">authorized_keys</filename> file may "
  1.3504  "have a problem. If anyone other than the user owns or can write to that file, "
  1.3505 @@ -6603,7 +6884,7 @@
  1.3506  msgstr ""
  1.3507  
  1.3508  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3509 -#: ../en/ch05-collab.xml:762
  1.3510 +#: ../en/ch05-collab.xml:819
  1.3511  msgid ""
  1.3512  "In the ideal world, you should be able to run the following command "
  1.3513  "successfully, and it should print exactly one line of output, the current "
  1.3514 @@ -6611,7 +6892,7 @@
  1.3515  msgstr ""
  1.3516  
  1.3517  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3518 -#: ../en/ch05-collab.xml:767
  1.3519 +#: ../en/ch05-collab.xml:824
  1.3520  msgid ""
  1.3521  "If, on your server, you have login scripts that print banners or other junk "
  1.3522  "even when running non-interactive commands like this, you should fix them "
  1.3523 @@ -6626,7 +6907,7 @@
  1.3524  msgstr ""
  1.3525  
  1.3526  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3527 -#: ../en/ch05-collab.xml:781
  1.3528 +#: ../en/ch05-collab.xml:838
  1.3529  msgid ""
  1.3530  "Once you've verified that plain old ssh is working with your server, the next "
  1.3531  "step is to ensure that Mercurial runs on the server.  The following command "
  1.3532 @@ -6634,7 +6915,7 @@
  1.3533  msgstr ""
  1.3534  
  1.3535  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3536 -#: ../en/ch05-collab.xml:788
  1.3537 +#: ../en/ch05-collab.xml:845
  1.3538  msgid ""
  1.3539  "If you see an error message instead of normal <command role=\"hg-cmd\">hg "
  1.3540  "version</command> output, this is usually because you haven't installed "
  1.3541 @@ -6644,21 +6925,21 @@
  1.3542  msgstr ""
  1.3543  
  1.3544  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.3545 -#: ../en/ch05-collab.xml:795
  1.3546 +#: ../en/ch05-collab.xml:852
  1.3547  msgid ""
  1.3548  "Is Mercurial really installed on the server at all? I know this sounds "
  1.3549  "trivial, but it's worth checking!"
  1.3550  msgstr ""
  1.3551  
  1.3552  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.3553 -#: ../en/ch05-collab.xml:799
  1.3554 +#: ../en/ch05-collab.xml:856
  1.3555  msgid ""
  1.3556  "Maybe your shell's search path (usually set via the <envar>PATH</envar> "
  1.3557  "environment variable) is simply misconfigured."
  1.3558  msgstr ""
  1.3559  
  1.3560  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.3561 -#: ../en/ch05-collab.xml:803
  1.3562 +#: ../en/ch05-collab.xml:860
  1.3563  msgid ""
  1.3564  "Perhaps your <envar>PATH</envar> environment variable is only being set to "
  1.3565  "point to the location of the <command>hg</command> executable if the login "
  1.3566 @@ -6667,7 +6948,7 @@
  1.3567  msgstr ""
  1.3568  
  1.3569  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.3570 -#: ../en/ch05-collab.xml:810
  1.3571 +#: ../en/ch05-collab.xml:867
  1.3572  msgid ""
  1.3573  "The <envar>PYTHONPATH</envar> environment variable may need to contain the "
  1.3574  "path to the Mercurial Python modules.  It might not be set at all; it could "
  1.3575 @@ -6675,7 +6956,7 @@
  1.3576  msgstr ""
  1.3577  
  1.3578  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3579 -#: ../en/ch05-collab.xml:817
  1.3580 +#: ../en/ch05-collab.xml:874
  1.3581  msgid ""
  1.3582  "If you can run <command role=\"hg-cmd\">hg version</command> over an ssh "
  1.3583  "connection, well done! You've got the server and client sorted out.  You "
  1.3584 @@ -6686,20 +6967,20 @@
  1.3585  msgstr ""
  1.3586  
  1.3587  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.3588 -#: ../en/ch05-collab.xml:827
  1.3589 +#: ../en/ch05-collab.xml:883
  1.3590  msgid "Using compression with ssh"
  1.3591  msgstr "通过 ssh 使用压缩"
  1.3592  
  1.3593  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3594 -#: ../en/ch05-collab.xml:829
  1.3595 +#: ../en/ch05-collab.xml:885
  1.3596  msgid ""
  1.3597  "Mercurial does not compress data when it uses the ssh protocol, because the "
  1.3598 -"ssh protocol can transparently compress data.  However, the default behaviour "
  1.3599 +"ssh protocol can transparently compress data.  However, the default behavior "
  1.3600  "of ssh clients is <emphasis>not</emphasis> to request compression."
  1.3601  msgstr ""
  1.3602  
  1.3603  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3604 -#: ../en/ch05-collab.xml:834
  1.3605 +#: ../en/ch05-collab.xml:890
  1.3606  msgid ""
  1.3607  "Over any network other than a fast LAN (even a wireless network), using "
  1.3608  "compression is likely to significantly speed up Mercurial's network "
  1.3609 @@ -6709,55 +6990,69 @@
  1.3610  msgstr ""
  1.3611  
  1.3612  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3613 -#: ../en/ch05-collab.xml:841
  1.3614 +#: ../en/ch05-collab.xml:897
  1.3615  msgid ""
  1.3616  "Both <command>ssh</command> and <command>plink</command> accept a <option "
  1.3617  "role=\"cmd-opt-ssh\">-C</option> option which turns on compression.  You can "
  1.3618  "easily edit your <filename role=\"special\">~/.hgrc</filename> to enable "
  1.3619 -"compression for all of Mercurial's uses of the ssh protocol."
  1.3620 -msgstr ""
  1.3621 -
  1.3622 -#. type: Content of: <book><chapter><sect1><sect2><para>
  1.3623 -#: ../en/ch05-collab.xml:849
  1.3624 -msgid ""
  1.3625 -"If you use <command>ssh</command>, you can configure it to always use "
  1.3626 -"compression when talking to your server.  To do this, edit your <filename "
  1.3627 -"role=\"special\">.ssh/config</filename> file (which may not yet exist), as "
  1.3628 -"follows."
  1.3629 -msgstr ""
  1.3630 -
  1.3631 -#. type: Content of: <book><chapter><sect1><sect2><para>
  1.3632 -#: ../en/ch05-collab.xml:857
  1.3633 -msgid ""
  1.3634 -"This defines an alias, <literal>hg</literal>.  When you use it on the "
  1.3635 -"<command>ssh</command> command line or in a Mercurial <literal>ssh</literal>-"
  1.3636 -"protocol URL, it will cause <command>ssh</command> to connect to <literal>hg."
  1.3637 -"example.com</literal> and use compression.  This gives you both a shorter "
  1.3638 -"name to type and compression, each of which is a good thing in its own right."
  1.3639 +"compression for all of Mercurial's uses of the ssh protocol.  Here is how to "
  1.3640 +"do so for regular <command>ssh</command> on Unix-like systems, for example."
  1.3641 +msgstr ""
  1.3642 +
  1.3643 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.3644 +#: ../en/ch05-collab.xml:907
  1.3645 +msgid ""
  1.3646 +"If you use <command>ssh</command> on a Unix-like system, you can configure it "
  1.3647 +"to always use compression when talking to your server.  To do this, edit your "
  1.3648 +"<filename role=\"special\">.ssh/config</filename> file (which may not yet "
  1.3649 +"exist), as follows."
  1.3650 +msgstr ""
  1.3651 +
  1.3652 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.3653 +#: ../en/ch05-collab.xml:917
  1.3654 +msgid ""
  1.3655 +"This defines a hostname alias, <literal>hg</literal>.  When you use that "
  1.3656 +"hostname on the <command>ssh</command> command line or in a Mercurial "
  1.3657 +"<literal>ssh</literal>-protocol URL, it will cause <command>ssh</command> to "
  1.3658 +"connect to <literal>hg.example.com</literal> and use compression.  This gives "
  1.3659 +"you both a shorter name to type and compression, each of which is a good "
  1.3660 +"thing in its own right."
  1.3661  msgstr ""
  1.3662  
  1.3663  #. type: Content of: <book><chapter><sect1><title>
  1.3664 -#: ../en/ch05-collab.xml:868
  1.3665 +#: ../en/ch05-collab.xml:929
  1.3666  msgid "Serving over HTTP using CGI"
  1.3667  msgstr "使用 CGI 通过 HTTP 提供服务"
  1.3668  
  1.3669  #. type: Content of: <book><chapter><sect1><para>
  1.3670 -#: ../en/ch05-collab.xml:870
  1.3671 +#: ../en/ch05-collab.xml:931
  1.3672 +msgid ""
  1.3673 +"The simplest way to host one or more repositories in a permanent way is to "
  1.3674 +"use a web server and Mercurial's CGI support."
  1.3675 +msgstr ""
  1.3676 +
  1.3677 +#. type: Content of: <book><chapter><sect1><para>
  1.3678 +#: ../en/ch05-collab.xml:935
  1.3679  msgid ""
  1.3680  "Depending on how ambitious you are, configuring Mercurial's CGI interface can "
  1.3681  "take anything from a few moments to several hours."
  1.3682  msgstr ""
  1.3683  
  1.3684  #. type: Content of: <book><chapter><sect1><para>
  1.3685 -#: ../en/ch05-collab.xml:874
  1.3686 +#: ../en/ch05-collab.xml:939
  1.3687  msgid ""
  1.3688  "We'll begin with the simplest of examples, and work our way towards a more "
  1.3689  "complex configuration.  Even for the most basic case, you're almost certainly "
  1.3690  "going to need to read and modify your web server's configuration."
  1.3691  msgstr ""
  1.3692  
  1.3693 +#. type: Content of: <book><chapter><sect1><note><title>
  1.3694 +#: ../en/ch05-collab.xml:945
  1.3695 +msgid "High pain tolerance required"
  1.3696 +msgstr ""
  1.3697 +
  1.3698  #. type: Content of: <book><chapter><sect1><note><para>
  1.3699 -#: ../en/ch05-collab.xml:880
  1.3700 +#: ../en/ch05-collab.xml:947
  1.3701  msgid ""
  1.3702  "Configuring a web server is a complex, fiddly, and highly system-dependent "
  1.3703  "activity.  I can't possibly give you instructions that will cover anything "
  1.3704 @@ -6766,34 +7061,43 @@
  1.3705  "mistakes, and to spend a lot of time reading your server's error logs."
  1.3706  msgstr ""
  1.3707  
  1.3708 -#. type: Content of: <book><chapter><sect1><sect2><title>
  1.3709 -#: ../en/ch05-collab.xml:890
  1.3710 +#. type: Content of: <book><chapter><sect1><note><para>
  1.3711 +#: ../en/ch05-collab.xml:955
  1.3712 +msgid ""
  1.3713 +"If you don't have a strong stomach for tweaking configurations over and over, "
  1.3714 +"or a compelling need to host your own services, you might want to try one of "
  1.3715 +"the public hosting services that I mentioned earlier."
  1.3716 +msgstr ""
  1.3717 +
  1.3718 +#. type: Content of: <book><chapter><sect1><sect2><title>
  1.3719 +#: ../en/ch05-collab.xml:962
  1.3720  msgid "Web server configuration checklist"
  1.3721  msgstr "Web 服务器配置检查表"
  1.3722  
  1.3723  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3724 -#: ../en/ch05-collab.xml:892
  1.3725 +#: ../en/ch05-collab.xml:964
  1.3726  msgid ""
  1.3727  "Before you continue, do take a few moments to check a few aspects of your "
  1.3728  "system's setup."
  1.3729  msgstr ""
  1.3730  
  1.3731  #. type: Content of: <book><chapter><sect1><sect2><orderedlist><listitem><para>
  1.3732 -#: ../en/ch05-collab.xml:896
  1.3733 -msgid ""
  1.3734 -"Do you have a web server installed at all? Mac OS X ships with Apache, but "
  1.3735 -"many other systems may not have a web server installed."
  1.3736 +#: ../en/ch05-collab.xml:968
  1.3737 +msgid ""
  1.3738 +"Do you have a web server installed at all? Mac OS X and some Linux "
  1.3739 +"distributions ship with Apache, but many other systems may not have a web "
  1.3740 +"server installed."
  1.3741  msgstr ""
  1.3742  
  1.3743  #. type: Content of: <book><chapter><sect1><sect2><orderedlist><listitem><para>
  1.3744 -#: ../en/ch05-collab.xml:900
  1.3745 +#: ../en/ch05-collab.xml:973
  1.3746  msgid ""
  1.3747  "If you have a web server installed, is it actually running? On most systems, "
  1.3748  "even if one is present, it will be disabled by default."
  1.3749  msgstr ""
  1.3750  
  1.3751  #. type: Content of: <book><chapter><sect1><sect2><orderedlist><listitem><para>
  1.3752 -#: ../en/ch05-collab.xml:904
  1.3753 +#: ../en/ch05-collab.xml:977
  1.3754  msgid ""
  1.3755  "Is your server configured to allow you to run CGI programs in the directory "
  1.3756  "where you plan to do so? Most servers default to explicitly disabling the "
  1.3757 @@ -6801,7 +7105,7 @@
  1.3758  msgstr ""
  1.3759  
  1.3760  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3761 -#: ../en/ch05-collab.xml:910
  1.3762 +#: ../en/ch05-collab.xml:983
  1.3763  msgid ""
  1.3764  "If you don't have a web server installed, and don't have substantial "
  1.3765  "experience configuring Apache, you should consider using the "
  1.3766 @@ -6814,12 +7118,12 @@
  1.3767  msgstr ""
  1.3768  
  1.3769  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.3770 -#: ../en/ch05-collab.xml:923
  1.3771 +#: ../en/ch05-collab.xml:996
  1.3772  msgid "Basic CGI configuration"
  1.3773  msgstr "基本 CGI 配置"
  1.3774  
  1.3775  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3776 -#: ../en/ch05-collab.xml:925
  1.3777 +#: ../en/ch05-collab.xml:998
  1.3778  msgid ""
  1.3779  "On Unix-like systems, it's common for users to have a subdirectory named "
  1.3780  "something like <filename class=\"directory\">public_html</filename> in their "
  1.3781 @@ -6829,7 +7133,7 @@
  1.3782  msgstr ""
  1.3783  
  1.3784  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3785 -#: ../en/ch05-collab.xml:933
  1.3786 +#: ../en/ch05-collab.xml:1006
  1.3787  msgid ""
  1.3788  "To get started, find the <filename role=\"special\">hgweb.cgi</filename> "
  1.3789  "script that should be present in your Mercurial installation.  If you can't "
  1.3790 @@ -6839,14 +7143,14 @@
  1.3791  msgstr ""
  1.3792  
  1.3793  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3794 -#: ../en/ch05-collab.xml:940 ../en/ch05-collab.xml:1109
  1.3795 +#: ../en/ch05-collab.xml:1013 ../en/ch05-collab.xml:1182
  1.3796  msgid ""
  1.3797  "You'll need to copy this script into your <filename class=\"directory"
  1.3798  "\">public_html</filename> directory, and ensure that it's executable."
  1.3799  msgstr ""
  1.3800  
  1.3801  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3802 -#: ../en/ch05-collab.xml:945
  1.3803 +#: ../en/ch05-collab.xml:1018
  1.3804  msgid ""
  1.3805  "The <literal>755</literal> argument to <command>chmod</command> is a little "
  1.3806  "more general than just making the script executable: it ensures that the "
  1.3807 @@ -6859,12 +7163,12 @@
  1.3808  msgstr ""
  1.3809  
  1.3810  #. type: Content of: <book><chapter><sect1><sect2><sect3><title>
  1.3811 -#: ../en/ch05-collab.xml:959
  1.3812 +#: ../en/ch05-collab.xml:1032
  1.3813  msgid "What could <emphasis>possibly</emphasis> go wrong?"
  1.3814  msgstr "什么<emphasis>可能</emphasis>会出错?"
  1.3815  
  1.3816  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.3817 -#: ../en/ch05-collab.xml:962
  1.3818 +#: ../en/ch05-collab.xml:1035
  1.3819  msgid ""
  1.3820  "Once you've copied the CGI script into place, go into a web browser, and try "
  1.3821  "to open the URL <ulink url=\"http://myhostname/ myuser/hgweb.cgi\">http://"
  1.3822 @@ -6878,7 +7182,7 @@
  1.3823  msgstr ""
  1.3824  
  1.3825  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.3826 -#: ../en/ch05-collab.xml:976
  1.3827 +#: ../en/ch05-collab.xml:1049
  1.3828  msgid ""
  1.3829  "Your web server may have per-user directories disabled.  If you're using "
  1.3830  "Apache, search your config file for a <literal>UserDir</literal> directive.  "
  1.3831 @@ -6891,7 +7195,7 @@
  1.3832  msgstr ""
  1.3833  
  1.3834  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.3835 -#: ../en/ch05-collab.xml:987
  1.3836 +#: ../en/ch05-collab.xml:1060
  1.3837  msgid ""
  1.3838  "Your file access permissions may be too restrictive.  The web server must be "
  1.3839  "able to traverse your home directory and directories under your <filename "
  1.3840 @@ -6901,7 +7205,7 @@
  1.3841  msgstr ""
  1.3842  
  1.3843  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.3844 -#: ../en/ch05-collab.xml:997
  1.3845 +#: ../en/ch05-collab.xml:1070
  1.3846  msgid ""
  1.3847  "The other possibility with permissions is that you might get a completely "
  1.3848  "empty window when you try to load the script.  In this case, it's likely that "
  1.3849 @@ -6911,7 +7215,7 @@
  1.3850  msgstr ""
  1.3851  
  1.3852  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.3853 -#: ../en/ch05-collab.xml:1004
  1.3854 +#: ../en/ch05-collab.xml:1077
  1.3855  msgid ""
  1.3856  "Your web server may be configured to disallow execution of CGI programs in "
  1.3857  "your per-user web directory.  Here's Apache's default per-user configuration "
  1.3858 @@ -6919,7 +7223,7 @@
  1.3859  msgstr ""
  1.3860  
  1.3861  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.3862 -#: ../en/ch05-collab.xml:1011
  1.3863 +#: ../en/ch05-collab.xml:1084
  1.3864  msgid ""
  1.3865  "If you find a similar-looking <literal>Directory</literal> group in your "
  1.3866  "Apache configuration, the directive to look at inside it is <literal>Options</"
  1.3867 @@ -6928,7 +7232,7 @@
  1.3868  msgstr ""
  1.3869  
  1.3870  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.3871 -#: ../en/ch05-collab.xml:1018
  1.3872 +#: ../en/ch05-collab.xml:1091
  1.3873  msgid ""
  1.3874  "If you find that Apache serves you the text of the CGI script instead of "
  1.3875  "executing it, you may need to either uncomment (if already present) or add a "
  1.3876 @@ -6936,7 +7240,7 @@
  1.3877  msgstr ""
  1.3878  
  1.3879  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.3880 -#: ../en/ch05-collab.xml:1024
  1.3881 +#: ../en/ch05-collab.xml:1097
  1.3882  msgid ""
  1.3883  "The next possibility is that you might be served with a colourful Python "
  1.3884  "backtrace claiming that it can't import a <literal>mercurial</literal>-"
  1.3885 @@ -6951,7 +7255,7 @@
  1.3886  msgstr ""
  1.3887  
  1.3888  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.3889 -#: ../en/ch05-collab.xml:1038
  1.3890 +#: ../en/ch05-collab.xml:1111
  1.3891  msgid ""
  1.3892  "Finally, you are <emphasis>certain</emphasis> to by served with another "
  1.3893  "colourful Python backtrace: this one will complain that it can't find "
  1.3894 @@ -6962,19 +7266,19 @@
  1.3895  msgstr ""
  1.3896  
  1.3897  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.3898 -#: ../en/ch05-collab.xml:1048
  1.3899 +#: ../en/ch05-collab.xml:1121
  1.3900  msgid ""
  1.3901  "At this point, when you try to reload the page, you should be presented with "
  1.3902  "a nice HTML view of your repository's history.  Whew!"
  1.3903  msgstr ""
  1.3904  
  1.3905  #. type: Content of: <book><chapter><sect1><sect2><sect3><title>
  1.3906 -#: ../en/ch05-collab.xml:1054
  1.3907 +#: ../en/ch05-collab.xml:1127
  1.3908  msgid "Configuring lighttpd"
  1.3909  msgstr "配置 lighttpd"
  1.3910  
  1.3911  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.3912 -#: ../en/ch05-collab.xml:1056
  1.3913 +#: ../en/ch05-collab.xml:1129
  1.3914  msgid ""
  1.3915  "To be exhaustive in my experiments, I tried configuring the increasingly "
  1.3916  "popular <literal>lighttpd</literal> web server to serve the same repository "
  1.3917 @@ -6985,7 +7289,7 @@
  1.3918  msgstr ""
  1.3919  
  1.3920  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.3921 -#: ../en/ch05-collab.xml:1066
  1.3922 +#: ../en/ch05-collab.xml:1139
  1.3923  msgid ""
  1.3924  "Once I had Apache running, getting <literal>lighttpd</literal> to serve the "
  1.3925  "repository was a snap (in other words, even if you're trying to use "
  1.3926 @@ -6997,7 +7301,7 @@
  1.3927  msgstr ""
  1.3928  
  1.3929  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.3930 -#: ../en/ch05-collab.xml:1078
  1.3931 +#: ../en/ch05-collab.xml:1151
  1.3932  msgid ""
  1.3933  "With this done, <literal>lighttpd</literal> ran immediately for me.  If I had "
  1.3934  "configured <literal>lighttpd</literal> before Apache, I'd almost certainly "
  1.3935 @@ -7008,12 +7312,12 @@
  1.3936  msgstr ""
  1.3937  
  1.3938  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.3939 -#: ../en/ch05-collab.xml:1091
  1.3940 +#: ../en/ch05-collab.xml:1164
  1.3941  msgid "Sharing multiple repositories with one CGI script"
  1.3942  msgstr "使用一个 CGI 脚本共享多个版本库"
  1.3943  
  1.3944  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3945 -#: ../en/ch05-collab.xml:1093
  1.3946 +#: ../en/ch05-collab.xml:1166
  1.3947  msgid ""
  1.3948  "The <filename role=\"special\">hgweb.cgi</filename> script only lets you "
  1.3949  "publish a single repository, which is an annoying restriction.  If you want "
  1.3950 @@ -7023,7 +7327,7 @@
  1.3951  msgstr ""
  1.3952  
  1.3953  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3954 -#: ../en/ch05-collab.xml:1101
  1.3955 +#: ../en/ch05-collab.xml:1174
  1.3956  msgid ""
  1.3957  "The procedure to configure <filename role=\"special\">hgwebdir.cgi</filename> "
  1.3958  "is only a little more involved than for <filename role=\"special\">hgweb.cgi</"
  1.3959 @@ -7034,7 +7338,7 @@
  1.3960  msgstr ""
  1.3961  
  1.3962  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3963 -#: ../en/ch05-collab.xml:1116
  1.3964 +#: ../en/ch05-collab.xml:1189
  1.3965  msgid ""
  1.3966  "With basic configuration out of the way, try to visit <ulink url=\"http://"
  1.3967  "myhostname/ myuser/hgwebdir.cgi\">http://myhostname/ myuser/hgwebdir.cgi</"
  1.3968 @@ -7044,7 +7348,7 @@
  1.3969  msgstr ""
  1.3970  
  1.3971  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3972 -#: ../en/ch05-collab.xml:1125
  1.3973 +#: ../en/ch05-collab.xml:1198
  1.3974  msgid ""
  1.3975  "The <filename role=\"special\">hgwebdir.cgi</filename> script relies on an "
  1.3976  "external configuration file.  By default, it searches for a file named "
  1.3977 @@ -7056,7 +7360,7 @@
  1.3978  msgstr ""
  1.3979  
  1.3980  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3981 -#: ../en/ch05-collab.xml:1135
  1.3982 +#: ../en/ch05-collab.xml:1208
  1.3983  msgid ""
  1.3984  "The easiest way to configure <filename role=\"special\">hgwebdir.cgi</"
  1.3985  "filename> is with a section named <literal>collections</literal>.  This will "
  1.3986 @@ -7065,7 +7369,7 @@
  1.3987  msgstr ""
  1.3988  
  1.3989  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3990 -#: ../en/ch05-collab.xml:1143
  1.3991 +#: ../en/ch05-collab.xml:1216
  1.3992  msgid ""
  1.3993  "Mercurial interprets this by looking at the directory name on the "
  1.3994  "<emphasis>right</emphasis> hand side of the <quote><literal>=</literal></"
  1.3995 @@ -7077,7 +7381,7 @@
  1.3996  msgstr ""
  1.3997  
  1.3998  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.3999 -#: ../en/ch05-collab.xml:1152
  1.4000 +#: ../en/ch05-collab.xml:1225
  1.4001  msgid ""
  1.4002  "Given the example above, if we have a repository whose local path is "
  1.4003  "<filename class=\"directory\">/my/root/this/repo</filename>, the CGI script "
  1.4004 @@ -7091,7 +7395,7 @@
  1.4005  msgstr ""
  1.4006  
  1.4007  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.4008 -#: ../en/ch05-collab.xml:1166
  1.4009 +#: ../en/ch05-collab.xml:1239
  1.4010  msgid ""
  1.4011  "If we replace <filename class=\"directory\">/my/root</filename> on the left "
  1.4012  "hand side of this example with <filename class=\"directory\">/my</filename>, "
  1.4013 @@ -7102,7 +7406,7 @@
  1.4014  msgstr ""
  1.4015  
  1.4016  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.4017 -#: ../en/ch05-collab.xml:1176
  1.4018 +#: ../en/ch05-collab.xml:1249
  1.4019  msgid ""
  1.4020  "The <filename role=\"special\">hgwebdir.cgi</filename> script will "
  1.4021  "recursively search each directory listed in the <literal>collections</"
  1.4022 @@ -7111,7 +7415,7 @@
  1.4023  msgstr ""
  1.4024  
  1.4025  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.4026 -#: ../en/ch05-collab.xml:1182
  1.4027 +#: ../en/ch05-collab.xml:1255
  1.4028  msgid ""
  1.4029  "The <literal>collections</literal> mechanism makes it easy to publish many "
  1.4030  "repositories in a <quote>fire and forget</quote> manner.  You only need to "
  1.4031 @@ -7122,12 +7426,12 @@
  1.4032  msgstr ""
  1.4033  
  1.4034  #. type: Content of: <book><chapter><sect1><sect2><sect3><title>
  1.4035 -#: ../en/ch05-collab.xml:1192
  1.4036 +#: ../en/ch05-collab.xml:1265
  1.4037  msgid "Explicitly specifying which repositories to publish"
  1.4038  msgstr "明确指出要发布的版本库"
  1.4039  
  1.4040  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.4041 -#: ../en/ch05-collab.xml:1195
  1.4042 +#: ../en/ch05-collab.xml:1268
  1.4043  msgid ""
  1.4044  "In addition to the <literal>collections</literal> mechanism, the <filename "
  1.4045  "role=\"special\">hgwebdir.cgi</filename> script allows you to publish a "
  1.4046 @@ -7136,7 +7440,7 @@
  1.4047  msgstr ""
  1.4048  
  1.4049  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.4050 -#: ../en/ch05-collab.xml:1204
  1.4051 +#: ../en/ch05-collab.xml:1277
  1.4052  msgid ""
  1.4053  "In this case, the virtual path (the component that will appear in a URL) is "
  1.4054  "on the left hand side of each definition, while the path to the repository is "
  1.4055 @@ -7146,28 +7450,33 @@
  1.4056  msgstr ""
  1.4057  
  1.4058  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.4059 -#: ../en/ch05-collab.xml:1211
  1.4060 +#: ../en/ch05-collab.xml:1284
  1.4061  msgid ""
  1.4062  "If you wish, you can use both the <literal>collections</literal> and "
  1.4063  "<literal>paths</literal> mechanisms simultaneously in a single configuration "
  1.4064  "file."
  1.4065  msgstr ""
  1.4066  
  1.4067 +#. type: Content of: <book><chapter><sect1><sect2><sect3><note><title>
  1.4068 +#: ../en/ch05-collab.xml:1290
  1.4069 +msgid "Beware duplicate virtual paths"
  1.4070 +msgstr ""
  1.4071 +
  1.4072  #. type: Content of: <book><chapter><sect1><sect2><sect3><note><para>
  1.4073 -#: ../en/ch05-collab.xml:1217
  1.4074 -msgid ""
  1.4075 -"If multiple repositories have the same virtual path, <filename role=\"special"
  1.4076 +#: ../en/ch05-collab.xml:1292
  1.4077 +msgid ""
  1.4078 +"If several repositories have the same virtual path, <filename role=\"special"
  1.4079  "\">hgwebdir.cgi</filename> will not report an error.  Instead, it will behave "
  1.4080  "unpredictably."
  1.4081  msgstr ""
  1.4082  
  1.4083  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.4084 -#: ../en/ch05-collab.xml:1226
  1.4085 +#: ../en/ch05-collab.xml:1301
  1.4086  msgid "Downloading source archives"
  1.4087  msgstr "下载源代码档案包"
  1.4088  
  1.4089  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.4090 -#: ../en/ch05-collab.xml:1228
  1.4091 +#: ../en/ch05-collab.xml:1303
  1.4092  msgid ""
  1.4093  "Mercurial's web interface lets users download an archive of any revision.  "
  1.4094  "This archive will contain a snapshot of the working directory as of that "
  1.4095 @@ -7175,21 +7484,21 @@
  1.4096  msgstr ""
  1.4097  
  1.4098  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.4099 -#: ../en/ch05-collab.xml:1233
  1.4100 +#: ../en/ch05-collab.xml:1308
  1.4101  msgid ""
  1.4102  "By default, this feature is not enabled.  To enable it, you'll need to add an "
  1.4103  "<envar role=\"rc-item-web\">allow_archive</envar> item to the <literal role="
  1.4104  "\"rc-web\">web</literal> section of your <filename role=\"special\">~/.hgrc</"
  1.4105 -"filename>."
  1.4106 -msgstr ""
  1.4107 -
  1.4108 -#. type: Content of: <book><chapter><sect1><sect2><title>
  1.4109 -#: ../en/ch05-collab.xml:1241
  1.4110 +"filename>; see below for details."
  1.4111 +msgstr ""
  1.4112 +
  1.4113 +#. type: Content of: <book><chapter><sect1><sect2><title>
  1.4114 +#: ../en/ch05-collab.xml:1315
  1.4115  msgid "Web configuration options"
  1.4116  msgstr "Web 配置选项"
  1.4117  
  1.4118  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.4119 -#: ../en/ch05-collab.xml:1243
  1.4120 +#: ../en/ch05-collab.xml:1317
  1.4121  msgid ""
  1.4122  "Mercurial's web interfaces (the <command role=\"hg-cmd\">hg serve</command> "
  1.4123  "command, and the <filename role=\"special\">hgweb.cgi</filename> and "
  1.4124 @@ -7199,7 +7508,7 @@
  1.4125  msgstr ""
  1.4126  
  1.4127  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.4128 -#: ../en/ch05-collab.xml:1251
  1.4129 +#: ../en/ch05-collab.xml:1325
  1.4130  msgid ""
  1.4131  "<envar role=\"rc-item-web\">allow_archive</envar>: Determines which (if any) "
  1.4132  "archive download mechanisms Mercurial supports.  If you enable this feature, "
  1.4133 @@ -7209,7 +7518,7 @@
  1.4134  msgstr ""
  1.4135  
  1.4136  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><itemizedlist><listitem><para>
  1.4137 -#: ../en/ch05-collab.xml:1260
  1.4138 +#: ../en/ch05-collab.xml:1334
  1.4139  msgid ""
  1.4140  "<literal>bz2</literal>: A <command>tar</command> archive, compressed using "
  1.4141  "<literal>bzip2</literal> compression.  This has the best compression ratio, "
  1.4142 @@ -7217,14 +7526,14 @@
  1.4143  msgstr ""
  1.4144  
  1.4145  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><itemizedlist><listitem><para>
  1.4146 -#: ../en/ch05-collab.xml:1266
  1.4147 +#: ../en/ch05-collab.xml:1340
  1.4148  msgid ""
  1.4149  "<literal>gz</literal>: A <command>tar</command> archive, compressed using "
  1.4150  "<literal>gzip</literal> compression."
  1.4151  msgstr ""
  1.4152  
  1.4153  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><itemizedlist><listitem><para>
  1.4154 -#: ../en/ch05-collab.xml:1270
  1.4155 +#: ../en/ch05-collab.xml:1344
  1.4156  msgid ""
  1.4157  "<literal>zip</literal>: A <command>zip</command> archive, compressed using "
  1.4158  "LZW compression.  This format has the worst compression ratio, but is widely "
  1.4159 @@ -7232,7 +7541,7 @@
  1.4160  msgstr ""
  1.4161  
  1.4162  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.4163 -#: ../en/ch05-collab.xml:1276
  1.4164 +#: ../en/ch05-collab.xml:1350
  1.4165  msgid ""
  1.4166  "If you provide an empty list, or don't have an <envar role=\"rc-item-web"
  1.4167  "\">allow_archive</envar> entry at all, this feature will be disabled.  Here "
  1.4168 @@ -7240,7 +7549,7 @@
  1.4169  msgstr ""
  1.4170  
  1.4171  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.4172 -#: ../en/ch05-collab.xml:1283
  1.4173 +#: ../en/ch05-collab.xml:1357
  1.4174  msgid ""
  1.4175  "<envar role=\"rc-item-web\">allowpull</envar>: Boolean.  Determines whether "
  1.4176  "the web interface allows remote users to <command role=\"hg-cmd\">hg pull</"
  1.4177 @@ -7250,7 +7559,7 @@
  1.4178  msgstr ""
  1.4179  
  1.4180  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.4181 -#: ../en/ch05-collab.xml:1292
  1.4182 +#: ../en/ch05-collab.xml:1366
  1.4183  msgid ""
  1.4184  "<envar role=\"rc-item-web\">contact</envar>: String.  A free-form (but "
  1.4185  "preferably brief) string identifying the person or group in charge of the "
  1.4186 @@ -7262,21 +7571,21 @@
  1.4187  msgstr ""
  1.4188  
  1.4189  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.4190 -#: ../en/ch05-collab.xml:1303
  1.4191 +#: ../en/ch05-collab.xml:1377
  1.4192  msgid ""
  1.4193  "<envar role=\"rc-item-web\">maxchanges</envar>: Integer.  The default maximum "
  1.4194  "number of changesets to display in a single page of output."
  1.4195  msgstr ""
  1.4196  
  1.4197  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.4198 -#: ../en/ch05-collab.xml:1307
  1.4199 +#: ../en/ch05-collab.xml:1381
  1.4200  msgid ""
  1.4201  "<envar role=\"rc-item-web\">maxfiles</envar>: Integer.  The default maximum "
  1.4202  "number of modified files to display in a single page of output."
  1.4203  msgstr ""
  1.4204  
  1.4205  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.4206 -#: ../en/ch05-collab.xml:1311
  1.4207 +#: ../en/ch05-collab.xml:1385
  1.4208  msgid ""
  1.4209  "<envar role=\"rc-item-web\">stripes</envar>: Integer.  If the web interface "
  1.4210  "displays alternating <quote>stripes</quote> to make it easier to visually "
  1.4211 @@ -7285,18 +7594,49 @@
  1.4212  msgstr ""
  1.4213  
  1.4214  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.4215 -#: ../en/ch05-collab.xml:1317
  1.4216 +#: ../en/ch05-collab.xml:1391
  1.4217  msgid ""
  1.4218  "<envar role=\"rc-item-web\">style</envar>: Controls the template Mercurial "
  1.4219 -"uses to display the web interface.  Mercurial ships with two web templates, "
  1.4220 -"named <literal>default</literal> and <literal>gitweb</literal> (the latter is "
  1.4221 -"much more visually attractive).  You can also specify a custom template of "
  1.4222 -"your own; see <xref linkend=\"chap:template\"/> for details. Here, you can "
  1.4223 -"see how to enable the <literal>gitweb</literal> style."
  1.4224 +"uses to display the web interface.  Mercurial ships with several web "
  1.4225 +"templates."
  1.4226 +msgstr ""
  1.4227 +
  1.4228 +#. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><itemizedlist><listitem><para>
  1.4229 +#: ../en/ch05-collab.xml:1397
  1.4230 +msgid "<literal>coal</literal> is monochromatic."
  1.4231 +msgstr ""
  1.4232 +
  1.4233 +#. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><itemizedlist><listitem><para>
  1.4234 +#: ../en/ch05-collab.xml:1400
  1.4235 +msgid ""
  1.4236 +"<literal>gitweb</literal> emulates the visual style of git's web interface."
  1.4237 +msgstr ""
  1.4238 +
  1.4239 +#. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><itemizedlist><listitem><para>
  1.4240 +#: ../en/ch05-collab.xml:1404
  1.4241 +msgid "<literal>monoblue</literal> uses solid blues and greys."
  1.4242 +msgstr ""
  1.4243 +
  1.4244 +#. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><itemizedlist><listitem><para>
  1.4245 +#: ../en/ch05-collab.xml:1408
  1.4246 +msgid "<literal>paper</literal> is the default."
  1.4247 +msgstr ""
  1.4248 +
  1.4249 +#. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><itemizedlist><listitem><para>
  1.4250 +#: ../en/ch05-collab.xml:1411
  1.4251 +msgid "<literal>spartan</literal> was the default for a long time."
  1.4252  msgstr ""
  1.4253  
  1.4254  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.4255 -#: ../en/ch05-collab.xml:1330
  1.4256 +#: ../en/ch05-collab.xml:1415
  1.4257 +msgid ""
  1.4258 +"You can also specify a custom template of your own; see <xref linkend=\"chap:"
  1.4259 +"template\"/> for details. Here, you can see how to enable the "
  1.4260 +"<literal>gitweb</literal> style."
  1.4261 +msgstr ""
  1.4262 +
  1.4263 +#. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.4264 +#: ../en/ch05-collab.xml:1423
  1.4265  msgid ""
  1.4266  "<envar role=\"rc-item-web\">templates</envar>: Path.  The directory in which "
  1.4267  "to search for template files.  By default, Mercurial searches in the "
  1.4268 @@ -7304,7 +7644,7 @@
  1.4269  msgstr ""
  1.4270  
  1.4271  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.4272 -#: ../en/ch05-collab.xml:1335
  1.4273 +#: ../en/ch05-collab.xml:1428
  1.4274  msgid ""
  1.4275  "If you are using <filename role=\"special\">hgwebdir.cgi</filename>, you can "
  1.4276  "place a few configuration items in a <literal role=\"rc-web\">web</literal> "
  1.4277 @@ -7315,12 +7655,12 @@
  1.4278  msgstr ""
  1.4279  
  1.4280  #. type: Content of: <book><chapter><sect1><sect2><sect3><title>
  1.4281 -#: ../en/ch05-collab.xml:1346
  1.4282 +#: ../en/ch05-collab.xml:1439
  1.4283  msgid "Options specific to an individual repository"
  1.4284  msgstr "针对单个版本库的选项"
  1.4285  
  1.4286  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.4287 -#: ../en/ch05-collab.xml:1348
  1.4288 +#: ../en/ch05-collab.xml:1441
  1.4289  msgid ""
  1.4290  "A few <literal role=\"rc-web\">web</literal> configuration items ought to be "
  1.4291  "placed in a repository's local <filename role=\"special\">.hg/hgrc</"
  1.4292 @@ -7329,7 +7669,7 @@
  1.4293  msgstr ""
  1.4294  
  1.4295  #. type: Content of: <book><chapter><sect1><sect2><sect3><itemizedlist><listitem><para>
  1.4296 -#: ../en/ch05-collab.xml:1353
  1.4297 +#: ../en/ch05-collab.xml:1446
  1.4298  msgid ""
  1.4299  "<envar role=\"rc-item-web\">description</envar>: String.  A free-form (but "
  1.4300  "preferably brief) string that describes the contents or purpose of the "
  1.4301 @@ -7337,7 +7677,7 @@
  1.4302  msgstr ""
  1.4303  
  1.4304  #. type: Content of: <book><chapter><sect1><sect2><sect3><itemizedlist><listitem><para>
  1.4305 -#: ../en/ch05-collab.xml:1358
  1.4306 +#: ../en/ch05-collab.xml:1451
  1.4307  msgid ""
  1.4308  "<envar role=\"rc-item-web\">name</envar>: String.  The name to use for the "
  1.4309  "repository in the web interface.  This overrides the default name, which is "
  1.4310 @@ -7345,13 +7685,13 @@
  1.4311  msgstr ""
  1.4312  
  1.4313  #. type: Content of: <book><chapter><sect1><sect2><sect3><title>
  1.4314 -#: ../en/ch05-collab.xml:1366
  1.4315 +#: ../en/ch05-collab.xml:1459
  1.4316  msgid ""
  1.4317  "Options specific to the <command role=\"hg-cmd\">hg serve</command> command"
  1.4318  msgstr "命令 <command role=\"hg-cmd\">hg serve</command> 的选项"
  1.4319  
  1.4320  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.4321 -#: ../en/ch05-collab.xml:1369
  1.4322 +#: ../en/ch05-collab.xml:1462
  1.4323  msgid ""
  1.4324  "Some of the items in the <literal role=\"rc-web\">web</literal> section of a "
  1.4325  "<filename role=\"special\">~/.hgrc</filename> file are only for use with the "
  1.4326 @@ -7359,7 +7699,7 @@
  1.4327  msgstr ""
  1.4328  
  1.4329  #. type: Content of: <book><chapter><sect1><sect2><sect3><itemizedlist><listitem><para>
  1.4330 -#: ../en/ch05-collab.xml:1375
  1.4331 +#: ../en/ch05-collab.xml:1468
  1.4332  msgid ""
  1.4333  "<envar role=\"rc-item-web\">accesslog</envar>: Path.  The name of a file into "
  1.4334  "which to write an access log.  By default, the <command role=\"hg-cmd\">hg "
  1.4335 @@ -7369,7 +7709,7 @@
  1.4336  msgstr ""
  1.4337  
  1.4338  #. type: Content of: <book><chapter><sect1><sect2><sect3><itemizedlist><listitem><para>
  1.4339 -#: ../en/ch05-collab.xml:1383
  1.4340 +#: ../en/ch05-collab.xml:1476
  1.4341  msgid ""
  1.4342  "<envar role=\"rc-item-web\">address</envar>: String.  The local address on "
  1.4343  "which the server should listen for incoming connections.  By default, the "
  1.4344 @@ -7377,7 +7717,7 @@
  1.4345  msgstr ""
  1.4346  
  1.4347  #. type: Content of: <book><chapter><sect1><sect2><sect3><itemizedlist><listitem><para>
  1.4348 -#: ../en/ch05-collab.xml:1388
  1.4349 +#: ../en/ch05-collab.xml:1481
  1.4350  msgid ""
  1.4351  "<envar role=\"rc-item-web\">errorlog</envar>: Path.  The name of a file into "
  1.4352  "which to write an error log.  By default, the <command role=\"hg-cmd\">hg "
  1.4353 @@ -7386,21 +7726,21 @@
  1.4354  msgstr ""
  1.4355  
  1.4356  #. type: Content of: <book><chapter><sect1><sect2><sect3><itemizedlist><listitem><para>
  1.4357 -#: ../en/ch05-collab.xml:1394
  1.4358 +#: ../en/ch05-collab.xml:1487
  1.4359  msgid ""
  1.4360  "<envar role=\"rc-item-web\">ipv6</envar>: Boolean.  Whether to use the IPv6 "
  1.4361  "protocol. By default, IPv6 is not used."
  1.4362  msgstr ""
  1.4363  
  1.4364  #. type: Content of: <book><chapter><sect1><sect2><sect3><itemizedlist><listitem><para>
  1.4365 -#: ../en/ch05-collab.xml:1398
  1.4366 +#: ../en/ch05-collab.xml:1491
  1.4367  msgid ""
  1.4368  "<envar role=\"rc-item-web\">port</envar>: Integer.  The TCP port number on "
  1.4369  "which the server should listen.  The default port number used is 8000."
  1.4370  msgstr ""
  1.4371  
  1.4372  #. type: Content of: <book><chapter><sect1><sect2><sect3><title>
  1.4373 -#: ../en/ch05-collab.xml:1405
  1.4374 +#: ../en/ch05-collab.xml:1498
  1.4375  msgid ""
  1.4376  "Choosing the right <filename role=\"special\">~/.hgrc</filename> file to add "
  1.4377  "<literal role=\"rc-web\">web</literal> items to"
  1.4378 @@ -7409,7 +7749,7 @@
  1.4379  "role=\"rc-web\">web</literal> 条目"
  1.4380  
  1.4381  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.4382 -#: ../en/ch05-collab.xml:1409
  1.4383 +#: ../en/ch05-collab.xml:1502
  1.4384  msgid ""
  1.4385  "It is important to remember that a web server like Apache or "
  1.4386  "<literal>lighttpd</literal> will run under a user ID that is different to "
  1.4387 @@ -7418,16 +7758,67 @@
  1.4388  msgstr ""
  1.4389  
  1.4390  #. type: Content of: <book><chapter><sect1><sect2><sect3><para>
  1.4391 -#: ../en/ch05-collab.xml:1416
  1.4392 +#: ../en/ch05-collab.xml:1509
  1.4393  msgid ""
  1.4394  "If you add <literal role=\"rc-web\">web</literal> items to your own personal "
  1.4395  "<filename role=\"special\">~/.hgrc</filename> file, CGI scripts won't read "
  1.4396  "that <filename role=\"special\">~/.hgrc</filename> file.  Those settings will "
  1.4397 -"thus only affect the behaviour of the <command role=\"hg-cmd\">hg serve</"
  1.4398 +"thus only affect the behavior of the <command role=\"hg-cmd\">hg serve</"
  1.4399  "command> command when you run it.  To cause CGI scripts to see your settings, "
  1.4400  "either create a <filename role=\"special\">~/.hgrc</filename> file in the "
  1.4401  "home directory of the user ID that runs your web server, or add those "
  1.4402 -"settings to a system-wide <filename role=\"special\">~/.hgrc</filename> file."
  1.4403 +"settings to a system-wide <filename role=\"special\">hgrc</filename> file."
  1.4404 +msgstr ""
  1.4405 +
  1.4406 +#. type: Content of: <book><chapter><sect1><title>
  1.4407 +#: ../en/ch05-collab.xml:1524
  1.4408 +#, fuzzy
  1.4409 +msgid "System-wide configuration"
  1.4410 +msgstr "基本 CGI 配置"
  1.4411 +
  1.4412 +#. type: Content of: <book><chapter><sect1><para>
  1.4413 +#: ../en/ch05-collab.xml:1526
  1.4414 +msgid ""
  1.4415 +"On Unix-like systems shared by multiple users (such as a server to which "
  1.4416 +"people publish changes), it often makes sense to set up some global default "
  1.4417 +"behaviors, such as what theme to use in web interfaces."
  1.4418 +msgstr ""
  1.4419 +
  1.4420 +#. type: Content of: <book><chapter><sect1><para>
  1.4421 +#: ../en/ch05-collab.xml:1531
  1.4422 +msgid ""
  1.4423 +"If a file named <filename>/etc/mercurial/hgrc</filename> exists, Mercurial "
  1.4424 +"will read it at startup time and apply any configuration settings it finds in "
  1.4425 +"that file.  It will also look for files ending in a <literal>.rc</literal> "
  1.4426 +"extension in a directory named <filename>/etc/mercurial/hgrc.d</filename>, "
  1.4427 +"and apply any configuration settings it finds in each of those files."
  1.4428 +msgstr ""
  1.4429 +
  1.4430 +#. type: Content of: <book><chapter><sect1><sect2><title>
  1.4431 +#: ../en/ch05-collab.xml:1540
  1.4432 +#, fuzzy
  1.4433 +msgid "Making Mercurial more trusting"
  1.4434 +msgstr "安装 Mercurial"
  1.4435 +
  1.4436 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.4437 +#: ../en/ch05-collab.xml:1542
  1.4438 +msgid ""
  1.4439 +"One situation in which a global <filename>hgrc</filename> can be useful is if "
  1.4440 +"users are pulling changes owned by other users.  By default, Mercurial will "
  1.4441 +"not trust most of the configuration items in a <filename>.hg/hgrc</filename> "
  1.4442 +"file inside a repository that is owned by a different user. If we clone or "
  1.4443 +"pull changes from such a repository, Mercurial will print a warning stating "
  1.4444 +"that it does not trust their <filename>.hg/hgrc</filename>."
  1.4445 +msgstr ""
  1.4446 +
  1.4447 +#. type: Content of: <book><chapter><sect1><sect2><para>
  1.4448 +#: ../en/ch05-collab.xml:1551
  1.4449 +msgid ""
  1.4450 +"If everyone in a particular Unix group is on the same team and "
  1.4451 +"<emphasis>should</emphasis> trust each other's configuration settings, or we "
  1.4452 +"want to trust particular users, we can override Mercurial's skeptical "
  1.4453 +"defaults by creating a system-wide <filename>hgrc</filename> file such as the "
  1.4454 +"following:"
  1.4455  msgstr ""
  1.4456  
  1.4457  #. type: Content of: <book><chapter><title>
  1.4458 @@ -7481,9 +7872,9 @@
  1.4459  #. type: Content of: <book><chapter><sect1><para>
  1.4460  #: ../en/ch06-filenames.xml:35
  1.4461  msgid ""
  1.4462 -"Mercurial's commands that work with file names have useful default behaviours "
  1.4463 +"Mercurial's commands that work with file names have useful default behaviors "
  1.4464  "when you invoke them without providing any file names or patterns.  What kind "
  1.4465 -"of behaviour you should expect depends on what the command does.  Here are a "
  1.4466 +"of behavior you should expect depends on what the command does.  Here are a "
  1.4467  "few rules of thumb you can use to predict what a command is likely to do if "
  1.4468  "you don't give it any names to work with."
  1.4469  msgstr ""
  1.4470 @@ -7504,11 +7895,10 @@
  1.4471  "<command role=\"hg-cmd\">hg remove</command> with no arguments, for example."
  1.4472  msgstr ""
  1.4473  
  1.4474 -#
  1.4475  #. type: Content of: <book><chapter><sect1><para>
  1.4476  #: ../en/ch06-filenames.xml:54
  1.4477  msgid ""
  1.4478 -"It's easy to work around these default behaviours if they don't suit you.  If "
  1.4479 +"It's easy to work around these default behaviors if they don't suit you.  If "
  1.4480  "a command normally operates on the whole working directory, you can invoke it "
  1.4481  "on just the current directory and its subdirectories by giving it the name "
  1.4482  "<quote><filename class=\"directory\">.</filename></quote>."
  1.4483 @@ -7549,8 +7939,8 @@
  1.4484  "The principle here is of <emphasis>least surprise</emphasis>.  If you've "
  1.4485  "exactly named a file on the command line, there's no point in repeating it "
  1.4486  "back at you.  If Mercurial is acting on a file <emphasis>implicitly</"
  1.4487 -"emphasis>, because you provided no names, or a directory, or a pattern (see "
  1.4488 -"below), it's safest to tell you what it's doing."
  1.4489 +"emphasis>, e.g.  because you provided no names, or a directory, or a pattern "
  1.4490 +"(see below), it is safest to tell you what files it's operating on."
  1.4491  msgstr ""
  1.4492  
  1.4493  #. type: Content of: <book><chapter><sect1><para>
  1.4494 @@ -7810,21 +8200,63 @@
  1.4495  
  1.4496  #. type: Content of: <book><chapter><sect1><title>
  1.4497  #: ../en/ch06-filenames.xml:272
  1.4498 -msgid "Ignoring unwanted files and directories"
  1.4499 +#, fuzzy
  1.4500 +msgid "Permanently ignoring unwanted files and directories"
  1.4501  msgstr "忽略不需要的文件和目录"
  1.4502  
  1.4503  #. type: Content of: <book><chapter><sect1><para>
  1.4504  #: ../en/ch06-filenames.xml:274
  1.4505 -msgid "XXX."
  1.4506 +msgid ""
  1.4507 +"When you create a new repository, the chances are that over time it will grow "
  1.4508 +"to contain files that ought to <emphasis>not</emphasis> be managed by "
  1.4509 +"Mercurial, but which you don't want to see listed every time you run "
  1.4510 +"<command>hg status</command>.  For instance, <quote>build products</quote> "
  1.4511 +"are files that are created as part of a build but which should not be managed "
  1.4512 +"by a revision control system.  The most common build products are output "
  1.4513 +"files produced by software tools such as compilers.  As another example, many "
  1.4514 +"text editors litter a directory with lock files, temporary working files, and "
  1.4515 +"backup files, which it also makes no sense to manage."
  1.4516 +msgstr ""
  1.4517 +
  1.4518 +#. type: Content of: <book><chapter><sect1><para>
  1.4519 +#: ../en/ch06-filenames.xml:286
  1.4520 +msgid ""
  1.4521 +"To have Mercurial permanently ignore such files, create a file named "
  1.4522 +"<filename>.hgignore</filename> in the root of your repository.  You "
  1.4523 +"<emphasis>should</emphasis> <command>hg add</command> this file so that it "
  1.4524 +"gets tracked with the rest of your repository contents, since your "
  1.4525 +"collaborators will probably find it useful too."
  1.4526 +msgstr ""
  1.4527 +
  1.4528 +#. type: Content of: <book><chapter><sect1><para>
  1.4529 +#: ../en/ch06-filenames.xml:293
  1.4530 +msgid ""
  1.4531 +"By default, the <filename>.hgignore</filename> file should contain a list of "
  1.4532 +"regular expressions, one per line.  Empty lines are skipped. Most people "
  1.4533 +"prefer to describe the files they want to ignore using the <quote>glob</"
  1.4534 +"quote> syntax that we described above, so a typical <filename>.hgignore</"
  1.4535 +"filename> file will start with this directive:"
  1.4536 +msgstr ""
  1.4537 +
  1.4538 +#. type: Content of: <book><chapter><sect1><para>
  1.4539 +#: ../en/ch06-filenames.xml:302
  1.4540 +msgid ""
  1.4541 +"This tells Mercurial to interpret the lines that follow as glob patterns, not "
  1.4542 +"regular expressions."
  1.4543 +msgstr ""
  1.4544 +
  1.4545 +#. type: Content of: <book><chapter><sect1><para>
  1.4546 +#: ../en/ch06-filenames.xml:305
  1.4547 +msgid "Here is a typical-looking <filename>.hgignore</filename> file."
  1.4548  msgstr ""
  1.4549  
  1.4550  #. type: Content of: <book><chapter><sect1><title>
  1.4551 -#: ../en/ch06-filenames.xml:278
  1.4552 +#: ../en/ch06-filenames.xml:329
  1.4553  msgid "Case sensitivity"
  1.4554  msgstr "大小写敏感性"
  1.4555  
  1.4556  #. type: Content of: <book><chapter><sect1><para>
  1.4557 -#: ../en/ch06-filenames.xml:280
  1.4558 +#: ../en/ch06-filenames.xml:331
  1.4559  msgid ""
  1.4560  "If you're working in a mixed development environment that contains both Linux "
  1.4561  "(or other Unix) systems and Macs or Windows systems, you should keep in the "
  1.4562 @@ -7835,7 +8267,7 @@
  1.4563  msgstr ""
  1.4564  
  1.4565  #. type: Content of: <book><chapter><sect1><para>
  1.4566 -#: ../en/ch06-filenames.xml:289
  1.4567 +#: ../en/ch06-filenames.xml:340
  1.4568  msgid ""
  1.4569  "Operating systems and filesystems differ in the way they handle the "
  1.4570  "<emphasis>case</emphasis> of characters in file and directory names.  There "
  1.4571 @@ -7843,7 +8275,7 @@
  1.4572  msgstr ""
  1.4573  
  1.4574  #. type: Content of: <book><chapter><sect1><itemizedlist><listitem><para>
  1.4575 -#: ../en/ch06-filenames.xml:294
  1.4576 +#: ../en/ch06-filenames.xml:345
  1.4577  msgid ""
  1.4578  "Completely case insensitive.  Uppercase and lowercase versions of a letter "
  1.4579  "are treated as identical, both when creating a file and during subsequent "
  1.4580 @@ -7851,7 +8283,7 @@
  1.4581  msgstr ""
  1.4582  
  1.4583  #. type: Content of: <book><chapter><sect1><itemizedlist><listitem><para>
  1.4584 -#: ../en/ch06-filenames.xml:299
  1.4585 +#: ../en/ch06-filenames.xml:350
  1.4586  msgid ""
  1.4587  "Case preserving, but insensitive.  When a file or directory is created, the "
  1.4588  "case of its name is stored, and can be retrieved and displayed by the "
  1.4589 @@ -7863,7 +8295,7 @@
  1.4590  msgstr ""
  1.4591  
  1.4592  #. type: Content of: <book><chapter><sect1><itemizedlist><listitem><para>
  1.4593 -#: ../en/ch06-filenames.xml:310
  1.4594 +#: ../en/ch06-filenames.xml:361
  1.4595  msgid ""
  1.4596  "Case sensitive.  The case of a name is significant at all times. The names "
  1.4597  "<filename>foo</filename> and {FoO} identify different files.  This is the way "
  1.4598 @@ -7871,7 +8303,7 @@
  1.4599  msgstr ""
  1.4600  
  1.4601  #. type: Content of: <book><chapter><sect1><para>
  1.4602 -#: ../en/ch06-filenames.xml:316
  1.4603 +#: ../en/ch06-filenames.xml:367
  1.4604  msgid ""
  1.4605  "On Unix-like systems, it is possible to have any or all of the above ways of "
  1.4606  "handling case in action at once.  For example, if you use a USB thumb drive "
  1.4607 @@ -7880,12 +8312,12 @@
  1.4608  msgstr ""
  1.4609  
  1.4610  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.4611 -#: ../en/ch06-filenames.xml:323
  1.4612 +#: ../en/ch06-filenames.xml:374
  1.4613  msgid "Safe, portable repository storage"
  1.4614  msgstr "安全,可移植的版本库存储"
  1.4615  
  1.4616  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.4617 -#: ../en/ch06-filenames.xml:325
  1.4618 +#: ../en/ch06-filenames.xml:376
  1.4619  msgid ""
  1.4620  "Mercurial's repository storage mechanism is <emphasis>case safe</emphasis>.  "
  1.4621  "It translates file names so that they can be safely stored on both case "
  1.4622 @@ -7896,12 +8328,12 @@
  1.4623  msgstr ""
  1.4624  
  1.4625  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.4626 -#: ../en/ch06-filenames.xml:336
  1.4627 +#: ../en/ch06-filenames.xml:387
  1.4628  msgid "Detecting case conflicts"
  1.4629  msgstr "检测大小写冲突"
  1.4630  
  1.4631  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.4632 -#: ../en/ch06-filenames.xml:338
  1.4633 +#: ../en/ch06-filenames.xml:389
  1.4634  msgid ""
  1.4635  "When operating in the working directory, Mercurial honours the naming policy "
  1.4636  "of the filesystem where the working directory is located.  If the filesystem "
  1.4637 @@ -7910,7 +8342,7 @@
  1.4638  msgstr ""
  1.4639  
  1.4640  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.4641 -#: ../en/ch06-filenames.xml:344
  1.4642 +#: ../en/ch06-filenames.xml:395
  1.4643  msgid ""
  1.4644  "An important aspect of this approach is that it is possible to commit a "
  1.4645  "changeset on a case sensitive (typically Linux or Unix) filesystem that will "
  1.4646 @@ -7923,7 +8355,7 @@
  1.4647  msgstr ""
  1.4648  
  1.4649  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.4650 -#: ../en/ch06-filenames.xml:355
  1.4651 +#: ../en/ch06-filenames.xml:406
  1.4652  msgid ""
  1.4653  "If a Windows or Mac user pulls this change, they will not initially have a "
  1.4654  "problem, because Mercurial's repository storage mechanism is case safe.  "
  1.4655 @@ -7935,12 +8367,12 @@
  1.4656  msgstr ""
  1.4657  
  1.4658  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.4659 -#: ../en/ch06-filenames.xml:367
  1.4660 +#: ../en/ch06-filenames.xml:418
  1.4661  msgid "Fixing a case conflict"
  1.4662  msgstr "修正大小写冲突"
  1.4663  
  1.4664  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.4665 -#: ../en/ch06-filenames.xml:369
  1.4666 +#: ../en/ch06-filenames.xml:420
  1.4667  msgid ""
  1.4668  "If you are using Windows or a Mac in a mixed environment where some of your "
  1.4669  "collaborators are using Linux or Unix, and Mercurial reports a case folding "
  1.4670 @@ -7950,7 +8382,7 @@
  1.4671  msgstr ""
  1.4672  
  1.4673  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.4674 -#: ../en/ch06-filenames.xml:376
  1.4675 +#: ../en/ch06-filenames.xml:427
  1.4676  msgid ""
  1.4677  "Just find a nearby Linux or Unix box, clone the problem repository onto it, "
  1.4678  "and use Mercurial's <command role=\"hg-cmd\">hg rename</command> command to "
  1.4679 @@ -7962,7 +8394,7 @@
  1.4680  msgstr ""
  1.4681  
  1.4682  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.4683 -#: ../en/ch06-filenames.xml:386
  1.4684 +#: ../en/ch06-filenames.xml:437
  1.4685  msgid ""
  1.4686  "The changeset with case-conflicting names will remain in your project's "
  1.4687  "history, and you still won't be able to <command role=\"hg-cmd\">hg update</"
  1.4688 @@ -7970,15 +8402,6 @@
  1.4689  "system, but you can continue development unimpeded."
  1.4690  msgstr ""
  1.4691  
  1.4692 -#. type: Content of: <book><chapter><sect1><sect2><note><para>
  1.4693 -#: ../en/ch06-filenames.xml:393
  1.4694 -msgid ""
  1.4695 -"Prior to version 0.9.3, Mercurial did not use a case safe repository storage "
  1.4696 -"mechanism, and did not detect case folding conflicts.  If you are using an "
  1.4697 -"older version of Mercurial on Windows or MacOS, I strongly recommend that you "
  1.4698 -"upgrade."
  1.4699 -msgstr ""
  1.4700 -
  1.4701  #. type: Content of: <book><chapter><title>
  1.4702  #: ../en/ch07-branch.xml:5
  1.4703  msgid "Managing releases and branchy development"
  1.4704 @@ -8152,17 +8575,17 @@
  1.4705  "revision once you discover your error."
  1.4706  msgstr ""
  1.4707  
  1.4708 -#
  1.4709  #. type: Content of: <book><chapter><sect1><para>
  1.4710  #: ../en/ch07-branch.xml:129
  1.4711  msgid ""
  1.4712  "Mercurial stores tags in a normal revision-controlled file in your "
  1.4713 -"repository.  If you've created any tags, you'll find them in a file named "
  1.4714 -"<filename role=\"special\">.hgtags</filename>.  When you run the <command "
  1.4715 -"role=\"hg-cmd\">hg tag</command> command, Mercurial modifies this file, then "
  1.4716 -"automatically commits the change to it.  This means that every time you run "
  1.4717 -"<command role=\"hg-cmd\">hg tag</command>, you'll see a corresponding "
  1.4718 -"changeset in the output of <command role=\"hg-cmd\">hg log</command>."
  1.4719 +"repository.  If you've created any tags, you'll find them in a file in the "
  1.4720 +"root of your repository named <filename role=\"special\">.hgtags</filename>.  "
  1.4721 +"When you run the <command role=\"hg-cmd\">hg tag</command> command, Mercurial "
  1.4722 +"modifies this file, then automatically commits the change to it.  This means "
  1.4723 +"that every time you run <command role=\"hg-cmd\">hg tag</command>, you'll see "
  1.4724 +"a corresponding changeset in the output of <command role=\"hg-cmd\">hg log</"
  1.4725 +"command>."
  1.4726  msgstr ""
  1.4727  
  1.4728  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.4729 @@ -8532,7 +8955,7 @@
  1.4730  #. type: Content of: <book><chapter><sect1><para>
  1.4731  #: ../en/ch07-branch.xml:427
  1.4732  msgid ""
  1.4733 -"This behaviour is a little subtle, so let's see it in action.  First, let's "
  1.4734 +"This behavior is a little subtle, so let's see it in action.  First, let's "
  1.4735  "remind ourselves what branch we're currently on, and what branches are in our "
  1.4736  "repository."
  1.4737  msgstr ""
  1.4738 @@ -8847,7 +9270,7 @@
  1.4739  "Mercurial stores exactly one transaction in its transaction log; that "
  1.4740  "transaction is the most recent one that occurred in the repository. This "
  1.4741  "means that you can only roll back one transaction.  If you expect to be able "
  1.4742 -"to roll back one transaction, then its predecessor, this is not the behaviour "
  1.4743 +"to roll back one transaction, then its predecessor, this is not the behavior "
  1.4744  "you will get."
  1.4745  msgstr ""
  1.4746  
  1.4747 @@ -9547,12 +9970,11 @@
  1.4748  #: ../en/ch08-undo.xml:689
  1.4749  msgid ""
  1.4750  "The idea behind the <command role=\"hg-cmd\">hg bisect</command> command is "
  1.4751 -"that a changeset has introduced some change of behaviour that you can "
  1.4752 -"identify with a simple binary test.  You don't know which piece of code "
  1.4753 -"introduced the change, but you know how to test for the presence of the bug.  "
  1.4754 -"The <command role=\"hg-cmd\">hg bisect</command> command uses your test to "
  1.4755 -"direct its search for the changeset that introduced the code that caused the "
  1.4756 -"bug."
  1.4757 +"that a changeset has introduced some change of behavior that you can identify "
  1.4758 +"with a simple binary test.  You don't know which piece of code introduced the "
  1.4759 +"change, but you know how to test for the presence of the bug.  The <command "
  1.4760 +"role=\"hg-cmd\">hg bisect</command> command uses your test to direct its "
  1.4761 +"search for the changeset that introduced the code that caused the bug."
  1.4762  msgstr ""
  1.4763  
  1.4764  #. type: Content of: <book><chapter><sect1><para>
  1.4765 @@ -10049,7 +10471,7 @@
  1.4766  "Even if you end up <quote>early</quote> by thousands of changesets or months "
  1.4767  "of history, you will only add a handful of tests to the total number that "
  1.4768  "<command role=\"hg-cmd\">hg bisect</command> must perform, thanks to its "
  1.4769 -"logarithmic behaviour."
  1.4770 +"logarithmic behavior."
  1.4771  msgstr ""
  1.4772  
  1.4773  #. type: Content of: <book><chapter><title>
  1.4774 @@ -10303,7 +10725,7 @@
  1.4775  msgid ""
  1.4776  "Mercurial allows you to override a hook definition by redefining the hook.  "
  1.4777  "You can disable it by setting its value to the empty string, or change its "
  1.4778 -"behaviour as you wish."
  1.4779 +"behavior as you wish."
  1.4780  msgstr ""
  1.4781  
  1.4782  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.4783 @@ -11296,7 +11718,7 @@
  1.4784  "You can configure the text that this hook adds as a comment; you specify it "
  1.4785  "in the form of a Mercurial template.  Several <filename role=\"special\">~/."
  1.4786  "hgrc</filename> entries (still in the <literal role=\"rc-bugzilla\">bugzilla</"
  1.4787 -"literal> section) control this behaviour."
  1.4788 +"literal> section) control this behavior."
  1.4789  msgstr ""
  1.4790  
  1.4791  #. type: Content of: <book><chapter><sect1><sect2><sect3><itemizedlist><listitem><para>
  1.4792 @@ -13385,7 +13807,7 @@
  1.4793  #: ../en/ch11-mq.xml:67
  1.4794  msgid ""
  1.4795  "During the late 1990s, several Linux kernel developers started to maintain "
  1.4796 -"<quote>patch series</quote> that modified the behaviour of the Linux kernel.  "
  1.4797 +"<quote>patch series</quote> that modified the behavior of the Linux kernel.  "
  1.4798  "Some of these series were focused on stability, some on feature coverage, and "
  1.4799  "others were more speculative."
  1.4800  msgstr ""
  1.4801 @@ -13465,8 +13887,7 @@
  1.4802  #: ../en/ch11-mq.xml:126
  1.4803  msgid ""
  1.4804  "In mid-2005, Chris Mason took the features of quilt and wrote an extension "
  1.4805 -"that he called Mercurial Queues, which added quilt-like behaviour to "
  1.4806 -"Mercurial."
  1.4807 +"that he called Mercurial Queues, which added quilt-like behavior to Mercurial."
  1.4808  msgstr ""
  1.4809  
  1.4810  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.4811 @@ -14758,7 +15179,7 @@
  1.4812  "Whether you are working on a patch series to submit to a free software or "
  1.4813  "open source project, or a series that you intend to treat as a sequence of "
  1.4814  "regular changesets when you're done, you can use some simple techniques to "
  1.4815 -"keep your work well organised."
  1.4816 +"keep your work well organized."
  1.4817  msgstr ""
  1.4818  
  1.4819  #. type: Content of: <book><chapter><sect1><para>
  1.4820 @@ -15615,7 +16036,7 @@
  1.4821  msgstr ""
  1.4822  
  1.4823  #
  1.4824 -#. 	&example.hg-interdiff;
  1.4825 +#. 	&example.hg-interdiff; 
  1.4826  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.4827  #: ../en/ch12-mq-collab.xml:466
  1.4828  msgid ""
  1.4829 @@ -15804,7 +16225,7 @@
  1.4830  "cmd\">hg status</command> commands.  The extension has two components.  A "
  1.4831  "daemon sits in the background and receives notifications from the "
  1.4832  "<literal>inotify</literal> subsystem.  It also listens for connections from a "
  1.4833 -"regular Mercurial command.  The extension modifies Mercurial's behaviour so "
  1.4834 +"regular Mercurial command.  The extension modifies Mercurial's behavior so "
  1.4835  "that instead of scanning the filesystem, it queries the daemon.  Since the "
  1.4836  "daemon has perfect information about the state of the repository, it can "
  1.4837  "respond with a result instantaneously, avoiding the need to scan every "
  1.4838 @@ -16000,7 +16421,7 @@
  1.4839  msgid ""
  1.4840  "When you're using the <literal role=\"hg-ext\">inotify</literal> extension, "
  1.4841  "you should notice <emphasis>no difference at all</emphasis> in Mercurial's "
  1.4842 -"behaviour, with the sole exception of status-related commands running a whole "
  1.4843 +"behavior, with the sole exception of status-related commands running a whole "
  1.4844  "lot faster than they used to.  You should specifically expect that commands "
  1.4845  "will not print different output; neither should they give different results. "
  1.4846  "If either of these situations occurs, please report a bug."
  1.4847 @@ -16300,7 +16721,8 @@
  1.4848  
  1.4849  #. type: Content of: <book><chapter><sect1><sect2><title>
  1.4850  #: ../en/ch13-hgext.xml:484
  1.4851 -msgid "Changing the behaviour of patchbombs"
  1.4852 +#, fuzzy
  1.4853 +msgid "Changing the behavior of patchbombs"
  1.4854  msgstr "修改 patchbomb 的行为"
  1.4855  
  1.4856  #. type: Content of: <book><chapter><sect1><sect2><para>
  1.4857 @@ -16330,7 +16752,7 @@
  1.4858  #. type: Content of: <book><chapter><sect1><sect2><itemizedlist><listitem><para>
  1.4859  #: ../en/ch13-hgext.xml:504
  1.4860  msgid ""
  1.4861 -"The default behaviour is to send unified diffs (see <xref linkend=\"sec:mq:"
  1.4862 +"The default behavior is to send unified diffs (see <xref linkend=\"sec:mq:"
  1.4863  "patch\"/> for a description of the format), one per message.  You can send a "
  1.4864  "binary bundle instead with the <option role=\"hg-ext-patchbomb-cmd-email-opt"
  1.4865  "\">hg -b</option> option."