source: codes/icosagcm/trunk/tools/FCM/doc/user_guide/command_ref.html @ 10

Last change on this file since 10 was 10, checked in by ymipsl, 12 years ago

dynamico tree creation

YM

File size: 49.7 KB
Line 
1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
3<html>
4<head>
5  <title>FCM System User Guide: FCM Command Reference</title>
6  <meta name="author" content="FCM development team">
7  <meta name="descriptions" content="User Guide - FCM Command Reference">
8  <meta name="keywords" content="FCM, user guide, command reference">
9  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
10  <link rel="stylesheet" type="text/css" href="style.css">
11</head>
12
13<body>
14  <address>
15    <a href="index.html">FCM System User Guide</a> &gt; FCM Command Reference
16  </address>
17
18  <h1>FCM Command Reference</h1>
19
20  <h2><a name="fcm_config">fcm Configuration File</a></h2>
21
22  <p>The FCM system uses simple line based text files to store configuration
23  settings. All configuration files used by FCM are based on the same
24  principles:</p>
25
26  <ul>
27    <li>All configurations are stored in plain text files.</li>
28
29    <li>A line in a file may contain a configuration setting or a comment.</li>
30
31    <li>Blank lines are ignored.</li>
32
33    <li>A line that begins with a <tt>#</tt> is a <em>comment</em> line.</li>
34
35    <li>Each configuration line has a <em>label</em>, a <em>value</em> and
36    optionally a trailing <em>comment</em>. For example:
37      <pre>
38my::label  this is the value  # some comment
39</pre>
40    </li>
41
42    <li>A <em>label</em> in a configuration line may contain any non-space
43    character. A space character marks the end of the <em>label</em>.</li>
44
45    <li>Words or fields in the <em>label</em> are normally delimited by the
46    double colon (<tt>::</tt>).</li>
47
48    <li>The first non-space character after the <em>label</em> is the beginning
49    of the <em>value</em>. The <em>value</em> may contain space characters. The
50    newline character or the character sequence <tt>" # "</tt> marks the end of
51    the <em>value</em>.</li>
52
53    <li>The first non-space character after the character sequence <tt>" #
54    "</tt> at the end of the <em>value</em> is the <em>comment</em>. The
55    <em>comment</em> is normally ignored by the parser of the configuration
56    file.</li>
57
58    <li>If the last character of the <em>value</em> is a backslash "\", the
59    next non-comment line will be the continuation of the current line. Please
60    note that trailing spaces before the continuation mark are preserved, and
61    leading spaces are removed from the beginning of a continuation. If you
62    want to have leading spaces in a continued line, start the line with a
63    backslash "\" before the leading spaces. It is also worth bearing in mind
64    that the backslash "\" character is only significant if it appears at the
65    end of a value or the beginning of a continuation line. It is not a special
66    character if it appears elsewhere. For example:
67      <pre>
68foo bar\
69    egg\
70    ham
71# will become:
72foo bareggham
73
74foo bar \
75    egg \
76    ham
77# will become:
78foo bar egg ham
79
80foo bar\
81    \ egg\
82    \ ham
83# will become:
84foo bar egg ham
85
86foo bar\
87    \ egg\ham
88# will become:
89foo bar egg\ham
90</pre>
91    </li>
92  </ul>
93
94  <p>The FCM central and user configuration files can be used to add or modify
95  some of the default settings of FCM. When the <em>fcm</em> command is
96  invoked, it normally attempts to search for a central configuration file at
97  <tt>$BINDIR/../etc/fcm.cfg</tt> and then <tt>$BINDIR/fcm.cfg</tt>, where
98  <tt>$BINDIR</tt> is the container directory of the <em>fcm</em> command. If a
99  central configuration file can be located, the settings in the file will
100  replace the pre-defined ones. After searching/reading the central
101  configuration file, the system will attempt to search for a user
102  configuration file located at <tt>$HOME/.fcm</tt> of the current user. If
103  such a file can be found, its settings will replace the pre-defined ones as
104  well as those defined in the central configuration file.</p>
105
106  <p>For information on the valid entries in the central and user configuration
107  files, please refer to the <a href="annex_fcm_cfg.html">Annex: Declarations
108  in FCM central/user configuration file</a>.</p>
109
110  <h2><a name="fcm_bld">fcm build</a></h2>
111
112  <h4>Usage</h4>
113
114  <p>fcm build [OPTIONS...] [CFGFILE]</p>
115
116  <h4>Description</h4>
117
118  <p><tt>fcm build</tt> invokes the FCM build system.</p>
119
120  <p>The path to a valid build configuration file <tt>CFGFILE</tt> may be
121  provided as either a URL or a pathname. Otherwise, the build system
122  searches the default locations for a build configuration file.</p>
123
124  <p>If no option is specified, the system uses the "<tt>-s 5 -t all -j 1 -v
125  1</tt>" by default.</p>
126
127  <ul>
128    <li>The "<tt>-a [--archive]</tt>" option can be specified to switch on the
129    archive mode. In archive mode, sub-directories produced by the build will
130    be archived in <em>tar</em> format at the end of a successful build. This
131    option should not be used if the current build is intended to be re-used as
132    a pre-compiled build.</li>
133
134    <li>If the "<tt>-f [--full]</tt>" option is specified, the build system
135    will attempt to perform a full/clean build by removing any previous build
136    files. Otherwise, the build system will attempt to perform an incremental
137    build where appropriate.</li>
138
139    <li>When the build system is invoked, it sets a lock file in the build root
140    directory to prevent other extracts/builds taking place in the same
141    location. The lock file is normally removed when the build system exits.
142    (However, a lock file may be left behind if the user interrupts the command,
143    e.g. by typing <tt>Ctrl-C</tt>.) You can bypass the check for lock files by
144    using the "<tt>--ignore-lock</tt>" option.</li>
145
146    <li>The "<tt>-j [--jobs] arg</tt>" option can be used to specify the number
147    of parallel jobs that can be handled by the <em>make</em> command. The
148    argument <tt>arg</tt> must be a natural integer to represent the number of
149    jobs. If not specified, the default is to perform serial <em>make</em>
150    (i.e. 1 job).</li>
151
152    <li>The "<tt>-s [--stage] arg</tt>" option can be used to limit the actions
153    performed by the build system, up to a named stage determined by the
154    argument <tt>arg</tt>. If not specified, the default is 5. The stages are:
155
156      <ul>
157        <li>"1", "s" or "setup": stage 1, read configuration and set up the
158        build</li>
159
160        <li>"2", "pp" or "pre_process": stage 2, perform pre-processing for
161        source files that require pre-processing</li>
162
163        <li>"3", "gd" or "generate_dependency": stage 3, scan source files for
164        dependency information and generate <em>make</em> rules for them</li>
165
166        <li>"4", "gi" or "generate_interface": stage 4, generate interface
167        files for Fortran 9X source files</li>
168
169        <li>"5", "m", "make": stage 5, invoke the <em>make</em> command to
170        build the project</li>
171      </ul>
172    </li>
173
174    <li>The "<tt>-t [--targets] arg</tt>" can be used to specify the targets to
175    be built. The argument <tt>arg</tt> must be a colon-separated list of valid
176    targets. If not specified, the default target to be built is the "all"
177    target.</li>
178
179    <li>The "<tt>-v [--verbose] arg</tt>" option can be specified to alter the
180    level of diagnostic output. The argument <tt>arg</tt> to this option must
181    be an integer greater than or equal to 0. The verbose level increases with
182    this number. If not specified, the default verbose level is 1.</li>
183  </ul>
184
185  <p>For further details, please refer to the chapter on <a href=
186  "build.html">The Build System</a>.</p>
187
188  <h4>Alternate Names</h4>
189
190  <p>bld</p>
191
192  <h2><a name="fcm_ext">fcm extract</a></h2>
193
194  <h4>Usage</h4>
195
196  <p>fcm extract [OPTIONS...] [CFGFILE]</p>
197
198  <h4>Description</h4>
199
200  <p><tt>fcm extract</tt> invokes the FCM extract system.</p>
201
202  <p>The path to a valid extract configuration file <tt>CFGFILE</tt> may be
203  provided as either a URL or a pathname. Otherwise, the extract system
204  searches the default locations for an extract configuration file.</p>
205
206  <ul>
207    <li>If the "<tt>-f [--full]</tt>" option is specified, the extract system
208    will attempt to perform a full/clean extraction by removing any previous
209    extracted files. Otherwise, the extract system will attempt to perform an
210    incremental extraction where appropriate.</li>
211
212    <li>When the extract system is invoked, it sets a lock file in the extract
213    destination root directory to prevent other extracts/builds taking place in
214    the same location. The lock file is normally removed when the extract system
215    exits.  (However, a lock file may be left behind if the user interrupts the
216    command, e.g. by typing <tt>Ctrl-C</tt>.) You can bypass the check for lock
217    files by using the "<tt>--ignore-lock</tt>" option.</li>
218
219    <li>The "<tt>-v [--verbose] arg</tt>" option can be specified to alter the
220    level of diagnostic output. The argument <tt>arg</tt> to this option must
221    be an integer greater than or equal to 0. The verbose level increases with
222    this number. If not specified, the default verbose level is 1.</li>
223  </ul>
224
225  <p>For further details, please refer to the chapter on <a href=
226  "extract.html">The Extract System</a>.</p>
227
228  <h4>Alternate Names</h4>
229
230  <p>ext</p>
231
232  <h2><a name="fcm_cmp-ext-cfg">fcm cmp-ext-cfg</a></h2>
233
234  <h4>Usage</h4>
235
236  <p>fcm cmp-ext-cfg [--wiki (-w) arg] CFG1 CFG2</p>
237
238  <h4>Description</h4>
239
240  <p><tt>fcm cmp-ext-cfg</tt> compares the extract configurations of two similar
241  extract configuration files CFG1 and CFG2. It reports repository branches and
242  source directories that are declared in one file but not another. If a source
243  directory is declared in both files, it compares their versions. If they
244  differ, it uses <tt>svn log</tt> to obtain a list of revision numbers at which
245  changes are made to the source directory. It then reports, for each declared
246  repository branch, the revisions at which changes occur in their declared
247  source directories.</p>
248
249  <p>The list of revisions for each declared repository branch is normally
250  printed out as a simple list in plain text. You can use the <tt>--wiki</tt>
251  option to change that into an tabular output suitable for inserting into a Trac
252  wiki page. The <tt>--wiki</tt> option must be specified with an argument, which
253  must be the Subversion URL or FCM URL keyword of a FCM project associated with
254  the intended Trac system. The URL allows the command to work out the correct
255  wiki syntax to use.</p>
256
257  <h2><a name="fcm_gui">fcm gui</a></h2>
258
259  <h4>Usage</h4>
260
261  <p>fcm gui [DIR]</p>
262
263  <h4>Description</h4>
264
265  <p><tt>fcm gui</tt> starts up the FCM GUI. If DIR is specified then this is
266  used as the working directory.</p>
267
268  <p>For further details, please refer to the section <a href=
269  "code_management.html#svn_gui">Using the GUI</a>.</p>
270
271  <h2><a name="fcm_svn">fcm Subversion Subcommands</a></h2>
272
273  <p>This section describes all of the Subversion related commands supported by
274  <tt>fcm</tt>.</p>
275
276  <ul>
277    <li>In some cases <tt>fcm</tt> simply passes the command directly on to
278    <tt>svn</tt> (after expanding any repository keywords). These commands are
279    listed in the <a href="#fcm_svn_other">Other Subversion Commands</a>
280    section.</li>
281
282    <li>Where <tt>fcm</tt> adds functionality these commands are discussed
283    individually.</li>
284
285    <li>In all cases, all the command abbreviations supported by <tt>svn</tt>
286    work with <tt>fcm</tt>.</li>
287  </ul>
288
289  <h3><a name="fcm_svn_add">fcm add</a></h3>
290
291  <h4>Usage</h4>
292
293  <p>fcm add --check (-c)</p>
294 
295  <p>fcm add &lt;any valid <em>svn add</em> options&gt;</p>
296
297  <h4>Description</h4>
298
299  <p><tt>fcm add</tt> supports all of the switches and arguments supported by
300  <tt>svn add</tt> (refer to the <a href=
301  "http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.add.html">Subversion
302  book</a> for details).</p>
303
304  <p>In addition, <tt>fcm add</tt> supports a <tt>--check</tt> switch (no
305  other switches or arguments). When this is specified then <tt>fcm</tt>
306  checks for any files which are not currently under version control (i.e. those
307  marked with a "?" by <tt>svn status</tt>) and prompts to see if you wish to
308  schedule them for addition at the next commit (using <tt>svn add</tt>).</p>
309
310  <p>For further details refer to the section <a href=
311  "code_management.html#svn_basic_check">Adding and Removing
312  Files</a>.</p>
313
314  <h3><a name="fcm_svn_br">fcm branch</a></h3>
315
316  <h4>Usage</h4>
317
318  <p>fcm branch [--info (-i)] [--verbose (-v)] [--show-children]
319  [--show-siblings] [--show-other] [--show-all (-a)] [TARGET]</p>
320
321  <p>fcm branch --delete (-d) [--verbose (-v)] [--show-children]
322  [--show-siblings] [--show-other] [--show-all (-a)] [--svn-non-interactive]
323  [--non-interactive] [--password arg] [TARGET]</p>
324
325  <p>fcm branch --create (-c) --name (-n) arg [--type (-t) arg] [--rev-flag arg]
326  [--ticket (-k) arg] [--branch-of-branch] [--svn-non-interactive]
327  [--non-interactive] [--password arg] [--revision arg] [TARGET]</p>
328
329  <p>fcm branch --list (-l) [--user (-u) arg] [--revision arg] [TARGET]</p>
330
331  <h4>Description</h4>
332
333  <p>If TARGET is specified, it must either be a URL or a path to a local
334  working copy. Otherwise, the current working directory must be a working copy.
335  For <tt>--info</tt> and <tt>--delete</tt>, the specified URL or that of the
336  working copy must be a valid branch (including the trunk) in a standard FCM
337  project. For <tt>--create</tt> and <tt>--list</tt>, it must be a valid URL of
338  a standard FCM project.</p>
339
340  <p><tt>fcm branch --info</tt> displays information about a branch.</p>
341
342  <ul>
343    <li>This is the default if no options are specified (e.g. if you just
344    issue the command <tt>fcm br</tt>).</li>
345
346    <li>This command performs the following actions:
347
348      <ul>
349        <li>It reports the basic information of the branch URL, as returned
350        by "svn info".</li>
351
352        <li>If <tt>--verbose</tt> is set, it also prints the log message of
353        the last change revision.</li>
354
355        <li>If the URL is not the trunk:
356       
357          <ul>
358            <li>It reports the branch creation information, including the
359            revision, author and date. It also reports the parent URL@REV of the
360            branch.  If <tt>--verbose</tt> is set, it prints the log message of
361            the branch creation revision.</li>
362
363            <li>If the branch does not exist at the HEAD, it reports the
364            revision at which it is deleted.</li>
365
366            <li>It reports the last merges into and from the parent branch. If
367            <tt>--verbose</tt> is set, it also prints the log message of
368            these merges.</li>
369
370            <li>It reports the revisions available for merging into and from the
371            parent branch. If <tt>--verbose</tt> is set, it also prints the log
372            message of these revisions.</li>
373          </ul>
374        </li>
375
376        <li>If <tt>--show-children</tt> is specified, it lists the current
377        children of the branch and their create revisions. Where appropriate, it
378        reports the revision of each child, which is last merged from/into the
379        current branch. It also reports the available merges from/into each
380        child into the current branch.</li>
381
382        <li>If <tt>--show-siblings</tt> is specified, it reports recent merges
383        from/into sibling branches. It also reports the available merges
384        from/into sibling branches where recent merges are detected. If
385        <tt>--verbose</tt> is set, it also prints the log message of these
386        merges.</li>
387
388        <li>If <tt>--show-other</tt> is specified, it reports all custom and
389        reverse merges into the current branch.</li>
390
391        <li>You can turn on <tt>--show-children</tt>, <tt>--show-siblings</tt>
392        and <tt>--show-other</tt> simultaneously by specifying
393        <tt>--show-all</tt>.</li>
394      </ul>
395    </li>
396
397    <li>For further details refer to the section <a href=
398    "code_management.html#svn_branching_info">Getting Information About
399    Branches</a>.</li>
400  </ul>
401
402  <p><tt>fcm branch --delete</tt> deletes a branch.</p>
403
404  <ul>
405    <li>This command performs the following actions:
406
407      <ul>
408        <li>Firstly, it provides exactly the same output as <tt>fcm branch
409        --info</tt>.</li>
410
411        <li>If you do not specify the --non-interactive option, it starts an
412        editor (using a similar convention as <a href= "#fcm_svn_ci">commit</a>)
413        to allow you to add further comment to the commit log message. A
414        standard commit log template is provided for you below the line that
415        says "--This line will be ignored and those below will be inserted
416        automatically--". If you need to add any extra message to the log,
417        please do so <strong>above</strong> this line. When you exit the editor,
418        the command will report the commit log before prompting for confirmation
419        that you wish to proceed with deleting the branch (it aborts if
420        not).</li>
421      </ul>
422    </li>
423
424    <li>If you specify the --non-interactive option, the command will not prompt
425    you for anything. (The --svn-non-interactive option is set automatically
426    when you specify --non-interactive.)</li>
427
428    <li>Subversion may prompt you for authentication if it is the first time
429    you access the repository. The command fails if the authentication
430    fails. If you specify the --svn-non-interfactive option, Subversion will not
431    prompt you for authentication. In such case, the command will simply
432    fail if authentication is required. You can use the --password option to
433    specify a password. Please note that the --svn-non-interactive option is
434    always specified if you are running "branch --delete" from the FCM GUI.
435    If authentication is required, you should specify your password using
436    the --password option in "Other options".</li>
437
438    <li>For further details refer to the section <a href=
439    "code_management.html#svn_branching_delete">Deleting Branches</a>.</li>
440  </ul>
441
442  <p><tt>fcm branch --create</tt> creates a new branch.</p>
443
444  <ul>
445    <li>You have to choose a name for your branch. This must be specified
446    as the argument of the --name (-n) option. The name of the branch must
447    contain only word characters, i.e. [A-Za-z0-9_].</li>
448
449    <li>You can specify the type of branch you are creating using the
450    --type (-t) option. The argument to the option must be one of the
451    following:
452
453      <ul>
454        <li>DEV::USER - a development branch for the current user (e.g.
455        branches/dev/&lt;user_id&gt;/&lt;branch_name&gt;)</li>
456
457        <li>DEV::SHARE - a shared development branch (e.g.
458        branches/dev/Share/&lt;branch_name&gt;)</li>
459
460        <li>DEV - same as DEV::USER</li>
461
462        <li>TEST::USER - a test branch for the current user (e.g.
463        branches/test/&lt;user_id&gt;/&lt;branch_name&gt;)</li>
464
465        <li>TEST::SHARE - a shared test branch (e.g.
466        branches/test/Share/&lt;branch_name&gt;)</li>
467
468        <li>TEST - same as TEST::USER</li>
469
470        <li>PKG::USER - a package branch for the current user (e.g.
471        branches/pkg/&lt;user_id&gt;/&lt;branch_name&gt;)</li>
472
473        <li>PKG::SHARE - a shared package branch (e.g.
474        branches/pkg/Share/&lt;branch_name&gt;)</li>
475
476        <li>PKG::CONFIG - a configuration branch (e.g.
477        branches/pkg/Config/&lt;branch_name&gt;)</li>
478
479        <li>PKG::REL - a release branch (e.g.
480        branches/pkg/Rel/&lt;branch_name&gt;)</li>
481
482        <li>PKG - same as PKG::USER</li>
483
484        <li>CONFIG - same as PKG::CONFIG</li>
485
486        <li>REL - same as PKG::REL</li>
487
488        <li>SHARE - same as DEV::SHARE</li>
489
490        <li>USER - same as DEV::USER</li>
491      </ul>
492
493      <p>If the --type option is not specified, it defaults to
494      DEV::USER.</p>
495    </li>
496
497    <li>Your branch name will normally be prefixed by the revision number
498    from which it is branched. (E.g. if the branch name is "my_branch" and
499    you are branching from revision 123 of the trunk, the final name will
500    be "r123_my_branch".) If this revision number is associated with a
501    revision keyword, the keyword will be used in place of the revision
502    number. (E.g. if revision 123 is associated with the keyword vn6.1,
503    "r123_my_branch" will become "vn6.1_my_branch".) You can alter this
504    behaviour using the argument to the --rev-flag option. If NORMAL is
505    specified, it uses the default behaviour. If NUMBER is specified, it
506    will always use the revision number as the prefix, regardless of
507    whether the revision number is defined as a keyword or not. If NONE is
508    specified, it will not add a prefix to your branch name.</li>
509
510    <li>The command will normally create your branch from the last changed
511    revision of the trunk of the specified project.
512     
513      <ul>
514        <li>You can use the --revision option to specify an earlier revision of
515        the source.</li>
516
517        <li>If the source URL is a valid URL of a branch in a standard FCM
518        project, you can use the <tt>--branch-of-branch</tt> option to create
519        a branch of the source branch.</li>
520      </ul>
521    </li>
522
523    <li>The --ticket option can be used to specify one or more Trac ticket
524    numbers, which the branch relates to. Multiple ticket numbers can be set
525    by specifying this option multiple times, or by using a comma-separated
526    list of ticket numbers as the argument to the option. If set, the line
527    "Relates to ticket #&lt;number&gt;[, #&lt;number&gt;...]" will be added
528    to the template commit log.</li>
529
530    <li>If you specify the --non-interactive option, the command will not prompt
531    you for anything. (The --svn-non-interactive option is set automatically
532    when you specify --non-interactive.)</li>
533
534    <li>Subversion may prompt you for authentication if it is the first time
535    you access the repository. The command fails if the authentication
536    fails. If you specify the --svn-non-interfactive option, Subversion will not
537    prompt you for authentication. In such case, the command will simply
538    fail if authentication is required. You can use the --password option to
539    specify a password. Please note that the --svn-non-interactive option is
540    always specified if you are running "branch --create" from the FCM GUI.
541    If authentication is required, you should specify your password using
542    the --password option in "Other options".</li>
543
544    <li>This command performs the following actions:
545
546      <ul>
547        <li>It determines the last changed revision of the trunk/source branch
548        at the HEAD (or the specified) revision.</li>
549
550        <li>It constructs the branch name from the option you have
551        specified and reports it.</li>
552
553        <li>It checks that the chosen branch name does not currently exist.
554        If so, the command aborts with an error.</li>
555
556        <li>If you do not specify the --non-interactive option, it starts an
557        editor (using a similar convention as <a href= "#fcm_svn_ci">commit</a>)
558        to allow you to add further comment to the commit log message. A
559        standard commit log template is provided for you below the line that
560        says "--This line will be ignored and those below will be inserted
561        automatically--". If you need to add any extra message to the log,
562        please do so <strong>above</strong> this line. When you exit the editor,
563        the command will report the commit log before prompting for confirmation
564        that you wish to proceed (it aborts if not).</li>
565
566        <li>It uses <tt>svn mkdir</tt> to create any sub-directories
567        required for the copy to succeed.</li>
568
569        <li>It uses <tt>svn copy</tt> to create the branch.</li>
570      </ul>
571    </li>
572
573    <li>For further details refer to the section <a href=
574    "code_management.html#svn_branching_create">Creating Branches</a>.</li>
575  </ul>
576
577  <p><tt>fcm branch --list</tt> lists the branches created by you (and/or other
578  users) at the HEAD revision of a standard FCM project.</p>
579
580  <ul>
581    <li>By default, it lists the branches created by you at the HEAD revision.
582    To display the branches at a different revision, you can use the
583    <tt>--revision arg</tt> option.</li>
584
585    <li>You can specify a list of users with the <tt>--user arg</tt>
586    option, where "arg" is a colon separated list of users. (Alternatively,
587    you can specify this option multiple times.) When this option is set,
588    the command lists the branches created by the specified list of users
589    instead.</li>
590
591    <li>The command returns 0 (success) if one or more branches is found
592    for the specified users, or 1 (failure) if no branch is found.</li>
593  </ul>
594
595  <h4>Alternate Names</h4>
596
597  <p>br</p>
598
599  <h3><a name="fcm_svn_ci">fcm commit</a></h3>
600
601  <h4>Usage</h4>
602
603  <p>fcm commit [--dry-run] [--svn-non-interactive] [--password arg] [PATH]</p>
604
605  <h4>Description</h4>
606
607  <p><tt>fcm commit</tt> sends changes from your working copy in the current
608  working directory (or from PATH if it is specified) to the repository.</p>
609
610  <ul>
611    <li>This command performs the following actions:
612
613      <ul>
614        <li>It checks that the current working directory (or PATH if it is
615        specified) is a working copy. (If not, it aborts with an error).</li>
616
617        <li>It always commits from the top level of the working copy.</li>
618
619        <li>It checks that there are no files in conflict, missing or out of
620        date (it aborts if there are).</li>
621
622        <li>It checks that any files which have been added have the
623        <em>svn:executable</em> property set correctly (in case a script was
624        added before the execute bit was set correctly).</li>
625
626        <li>It reads in any existing commit message and strips out any previous
627        status info (it starts with an empty file if there is none).
628
629          <ul>
630            <li>The commit message is stored in the file
631            <tt>#commit_message#</tt> in the top level of your working
632            copy.</li>
633          </ul>
634        </li>
635
636        <li>If you have run the <a href="fcm_svn_merge">merge</a> command
637        before the commit, you will get a standard commit log template below
638        the line that says "--This line will be ignored and those below will be
639        inserted automatically--". If you need to add any extra message to the
640        log, please do so <strong>above</strong> this line.</li>
641
642        <li>It adds the following line to the commit message:<br>
643        <tt>--This line, and those below, will be ignored--</tt><br>
644        This line, and anything below it, is automatically ignored by <tt>svn
645        commit</tt>.</li>
646
647        <li>It adds current status information to the commit message showing
648        the list of modifications.</li>
649
650        <li>It starts an editor to allow you to edit the commit message.
651
652          <ul>
653            <li>If defined, the environment variable SVN_EDITOR specifies the
654            editor.</li>
655
656            <li>Otherwise the environment variable VISUAL specifies the
657            editor.</li>
658
659            <li>Otherwise the environment variable EDITOR specifies the
660            editor.</li>
661
662            <li>Otherwise the editor <em>nedit</em> is used.</li>
663          </ul>
664        </li>
665
666        <li>It reports the commit message and then asks if you want to proceed
667        (it aborts if not).</li>
668
669        <li>It calls <tt>svn commit</tt> to send the changes to the
670        repository.</li>
671
672        <li>It calls <tt>svn update</tt> to bring your working copy up to the
673        new revision.</li>
674      </ul>
675    </li>
676
677    <li>Subversion may prompt you for authentication if it is the first time you
678    access the repository. The command fails if the authentication fails. If you
679    specify the --non-interfactive option, Subversion will not prompt you for
680    authentication. In such case, the command will simply fail if authentication
681    is required. You can use the --password option to specify a password. Please
682    note that the --svn-non-interactive option is always specified if you are
683    running "commit" from the FCM GUI. If authentication is required, you should
684    specify your password using the --password option in "Other options".</li>
685
686    <li>The <tt>--dry-run</tt> switch prevents the command from committing any
687    changes. This can be used to allow you to add notes to your commit message
688    whilst you are still preparing your change.</li>
689  </ul>
690
691  <p>For further details refer to the section <a href=
692  "code_management.html#svn_basic_commit">Committing Changes</a>.</p>
693
694  <h4>Alternate Names</h4>
695
696  <p>ci</p>
697
698  <h3><a name="fcm_svn_cf">fcm conflicts</a></h3>
699
700  <h4>Usage</h4>
701
702  <p>fcm conflicts [PATH]</p>
703
704  <h4>Description</h4>
705
706  <p><tt>fcm conflicts</tt> helps you to resolve any text files in your working
707  copy which have conflicts by using the graphical merge tool <em>xxdiff</em>.
708  If PATH is set, it must be a working copy, and the command will operate in
709  it. If PATH is not set, the command will operate in your current working
710  directory.</p>
711
712  <li>This command performs the following actions:
713
714    <ul>
715      <li>For each text file reported as being in conflict (i.e. marked with a
716      "C" by <tt>svn status</tt>) it calls <tt>xxdiff</tt>.</li>
717
718      <li>If <tt>xxdiff</tt> reports all conflicts resolved then if asks if
719      you wish to run <tt>svn resolved</tt> on that file.</li>
720    </ul>
721  </li>
722
723  <p>For further details refer to the section <a href=
724  "code_management.html#svn_basic_conflicts">Resolving Conflicts</a>.</p>
725
726  <h4>Alternate Names</h4>
727
728  <p>cf</p>
729
730  <h3><a name="fcm_svn_rm">fcm delete</a></h3>
731
732  <h4>Usage</h4>
733
734  <p>fcm delete --check (-c)</p>
735
736  <p>fcm delete &lt;any valid <em>svn delete</em> options&gt;</p>
737
738  <h4>Description</h4>
739
740  <p><tt>fcm delete</tt> supports all of the switches, arguments and alternate
741  names supported by <tt>svn delete</tt> (refer to the <a href=
742  "http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.delete.html">Subversion
743  book</a> for details).</p>
744
745  <ul>
746    <li>In addition, <tt>fcm delete</tt> supports a <tt>--check</tt> switch (no
747    other switches or arguments). When this is specified then <tt>fcm</tt>
748    checks for any files which are missing (i.e. marked with a "!" by <tt>svn
749    status</tt>) and prompts to see if you wish to schedule them for deletion
750    at the next commit (using <tt>svn delete</tt>).
751
752    <li>Subversion may prompt you for authentication if it is the first time
753    you access the repository. The command fails if the authentication fails.
754    If you specify the --non-interactive option, Subversion will not prompt
755    you for authentication. In such case, the command will simply fail if
756    authentication is required. Please note that the --non-interactive option
757    is automatically specified if you are running "delete" from the FCM GUI and
758    you have not checked the box "Check for files and directories...". If
759    authentication is required, you should run "delete" in interactive mode on
760    a command line.</li>
761  </ul>
762
763  <p>For further details refer to the section <a href=
764  "code_management.html#svn_basic_check">Adding and Removing Files</a>.</p>
765
766  <h3><a name="fcm_svn_diff">fcm diff</a></h3>
767
768  <h4>Usage</h4>
769
770  <p>fcm diff --branch (-b) [--graphical (-g)] [TARGET]</p>
771
772  <p>fcm diff [--graphical (-g)] &lt;any valid <em>svn diff</em> options&gt;</p>
773
774  <h4>Description</h4>
775
776  <p><tt>fcm diff</tt> supports all of the switches, arguments and alternate
777  names supported by <tt>svn diff</tt> (refer to the <a href=
778  "http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.diff.html">Subversion
779  book</a> for details). In addition, <tt>fcm diff</tt> supports the following
780  switches:</p>
781
782  <ul>
783    <li>The <tt>--graphical</tt> switch uses <em>xxdiff</em> to display the
784    differences. This switch can be used in combination with any other
785    valid switch (including <tt>--branch</tt>).</li>
786
787    <li>The <tt>--branch</tt> switch shows differences relative to the parent.
788    This command performs the following actions:
789
790      <ul>
791        <li>If TARGET is specified, it must either be a URL or a path to a
792        local working copy. Otherwise, the current working directory must be a
793        working copy. The specified URL or that of the working copy must be a
794        valid branch in a standard FCM project.</li>
795
796        <li>It determines the base of the branch relative to its parent. This is
797        adjusted to account for any merges from the branch to its parent or
798        vice-versa.</li>
799
800        <li>It reports what path and revision it is comparing against.</li>
801
802        <li>It calls <tt>svn diff</tt> to report the differences between the
803        base and the specified branch (or working copy).</li>
804      </ul>
805    </li>
806  </ul>
807
808  <p>For further details refer to the section <a href=
809  "code_management.html#svn_basic_diff">Examining Changes</a>.</p>
810
811  <h3><a name="fcm_svn_merge">fcm merge</a></h3>
812
813  <h4>Usage</h4>
814
815  <p>fcm merge [--dry-run] [--non-interactive] [--verbose (-v)] SOURCE</p>
816
817  <p>fcm merge --custom --revision N[:M] [--dry-run] [--non-interactive]
818  [--verbose (-v)] SOURCE</p>
819
820  <p>fcm merge --custom [--dry-run] [--non-interactive] [--verbose (-v)]
821  URL1[@REV1] URL2[@REV2]</p>
822
823  <p>fcm merge --reverse --revision [M:]N [--dry-run] [--non-interactive]
824  [--verbose (-v)]</p>
825
826  <h4>Description</h4>
827
828  <p><tt>fcm merge</tt> allows you to merge changes from a source into your
829  working copy.</p>
830
831  <p>Before it begins, the command does the following:</p>
832
833  <ul>
834    <li>If a SOURCE/URL is specified, it can be a full URL or a partial URL
835    starting at the branches, trunk or tags level.
836
837      <ul>
838        <li>If a partial URL is given, and the path name does not begin with
839        "trunk", "tags" or "branches" then "branches/" is automatically
840        added to the beginning of your path.</li>
841      </ul>
842    </li>
843
844    <li>It determines the TARGET URL by examining your working copy.</li>
845
846    <li>If the current directory is not the top of your working copy, it
847    changes the current directory to the top of your working copy.</li>
848
849    <li>If your working copy is not pointing to a branch of a project
850    managed by FCM, the command aborts with an error.</li>
851
852    <li>If you do not specify the --non-interactive option, it checks for any
853    local modifications in your working copy. If it finds any it reports them
854    and asks you to confirm that you wish to continue (it aborts if not).</li>
855  </ul>
856
857  <p>If neither --custom nor --reverse is specified, the command defaults to the
858  automatic mode. Automatic merges are used to merge changes between two
859  directly related branches, (i.e. the branches must either be created from the
860  same parent or have a parent/child relationship). These merges are tracked by
861  FCM and can be used by subsequent FCM commands. The merge delta is calculated
862  by doing the following:</p>
863
864  <ul>
865    <li>It checks that the SOURCE and TARGET are directly related.</li>
866
867    <li>It determines the base revision and path of the <em>common
868    ancestor</em> of the SOURCE and TARGET.</li>
869
870    <li>The base revision and path are adjusted to account for any merges
871    from the SOURCE to the TARGET or vice-versa.</li>
872
873    <li>It reports the revisions from SOURCE available for merging into
874    TARGET. If the --verbose option is set, it prints the log for these
875    revisions. It aborts if no revision is available for merging.</li>
876
877    <li>If there are 2 or more revisions available for merging and you do not
878    specify the --non-interactive target, it asks you which revision of the
879    SOURCE you wish to merge from. The default is the last changed revision of
880    the SOURCE. The merge delta is between the base and the specified revision
881    of the SOURCE.</li>
882
883    <li>If your working copy is a sub-tree of the TARGET, it ensures that the
884    SOURCE contains only changes in the same sub-tree. Otherwise, the merge is
885    unsafe, and the command will abort with an error.
886
887     <p>N.B.: The command looks for changes in the SOURCE by going through the
888     list of changed files since the the SOURCE was last merged into the TARGET.
889     (If there is no previous merge from SOURCE to TARGET, the common ancestor
890     is used.) It is worth noting that there are situations when the command
891     will regard your merge as "unsafe" (and so will fail incorrectly) even if
892     the changes in the SOURCE outside of the current sub-tree will result in a
893     null merge. This can happen if the changes are the results of a previous
894     merge from the TARGET to the SOURCE or if these changes have been
895     reversed. In such case, you will have to perform your merge in a working
896     copy of a full tree.</p>
897    </li>
898  </ul>
899
900  <p>The --custom mode is useful if you need to merge changes selectively from
901  another branch. The custom mode can be used in two forms:
902 
903  <ul>
904    <li>In the first form, you must specify a SOURCE as well as a revision
905    (range) using the --revision option. If you specify a single revision N, the
906    merge delta is between revision N - 1 and revision N of the SOURCE.
907    Otherwise, the merge delta is between revision N and revision M, where N
908    &lt; M.</li>
909 
910    <li>In the second form, you must specify two URLs. The merge delta is simply
911    between the two URLs. (For each URL, if you do not specify a peg revision,
912    the command will peg the URL with its last changed revision.)</li>
913  </ul>
914 
915  <p>N.B. Unlike automatic merges, custom merges are not tracked or used by
916  subsequent FCM <tt>diff</tt> or <tt>merge</tt> commands, (although <tt>branch
917  --info</tt> can be set to report them). Custom merges are always allowed, even
918  if your working copy is pointing to a sub-tree of a branch. However, there is no
919  checking mechanism to ensure the safety of your sub-tree custom merge so you
920  should only do this if you are confident it is what you want.
921  Therefore, it is recommended that you use automatic merges where possible, and
922  use custom merges only if you know what you are doing.</p>
923
924  <p>The --reverse mode is useful if you need to reverse a changeset (or a range
925  of changesets) in the current branch of the working copy. In this mode, you
926  must specify a revision (range) using the --revision option. If you specify a
927  single revision N, the merge delta is between revision N and revision N - 1 of
928  the current branch. Otherwise, the merge delta is between revision M and
929  revision N, where M &gt; N.</p>
930
931  <p>N.B. Like custom merges, reverse merges are not tracked or used by
932  subsequent FCM <tt>diff</tt> or <tt>merge</tt> commands, (although <tt>branch
933  --info</tt> can be set to report them). Likewise, reverse merges in sub-trees
934  are always allowed, although there is no checking mechanism to ensure the safety of
935  your sub-tree reverse merge.</p>
936
937  <p>Once the merge delta is determined, the command performs the following:</p>
938
939  <ul>
940    <li>If you set the --dry-run option or if you are running in the interactive
941    mode, it reports what changes will result from performing this merge by
942    calling <tt>svn merge --dry-run</tt>.
943
944      <ul>
945        <li>It prints the actual <tt>svn merge --dry-run</tt> command if the
946        --verbose option is specified.</li>
947
948        <li>If you specify the --dry-run option, it exits after reporting what
949        changes will result from performing the merge.</li>
950      </ul>
951    </li>
952
953    <li>If you are running in the interactive mode, it asks if you want to go
954    ahead with the merge (it aborts if not).</li>
955
956    <li>It performs the merge by calling <tt>svn merge</tt> to apply the delta
957    between the base and the SOURCE on your working copy.
958
959      <ul>
960        <li>It prints the actual <tt>svn merge</tt> command if the --verbose
961        option is specified.</li>
962      </ul>
963    </li>
964
965    <li>It adds a standard template into the commit message to provide
966    details of the merge. The template is written below the line that says
967    "--This line will be ignored and those below will be inserted
968    automatically--". The <a href="fcm_svn_commit">fcm commit</a> command
969    will detect the existence of the template, so that you will not be able
970    to alter it by accident.
971
972      <ul>
973        <li>The commit message is stored in the file
974        <tt>#commit_message#</tt> in the top level of your working copy. It
975        is created by the merge command if it does not already exist.</li>
976      </ul>
977    </li>
978  </ul>
979
980  <p>For further details refer to the section <a href=
981  "code_management.html#svn_branching_merge">Merging</a>.</p>
982
983  <h3><a name="fcm_svn_mkpatch">fcm mkpatch</a></h3>
984
985  <h4>Usage</h4>
986
987  <p>fcm mkpatch [OPTIONS] URL [OUTDIR]</p>
988
989  <h4>Description</h4>
990
991  <p><tt>fcm mkpatch</tt> creates patches from the specified revisions of the
992  specified URL, which must be a branch URL of a valid FCM project. If the URL
993  is a sub-directory of a branch, it will use the root of the branch.</p>
994 
995  <p>If OUTDIR is specified, the output is sent to OUTDIR.  Otherwise, the
996  output will be sent to a default location in the current directory
997  (<tt>$PWD/fcm-mkpatch-out/</tt>). The output directory will contain the patch
998  for each revision as well as a script for importing the patch.</p>
999
1000  <p>If a revision is specified using the <tt>--revision</tt> option, it will
1001  attempt to create a patch based on the changes at that revision. If a revision
1002  is not specified, it will attempt to create a patch based on the changes at
1003  the HEAD revision. If a revision range is specified, it will attempt to create
1004  a patch for each revision in that range (including the change in the lower
1005  range) where changes have taken place in the URL. No output will be written if
1006  there is no change in the given revision (range).</p>
1007
1008  <p>The <tt>--exclude</tt> option can be used to exclude a path in the URL. The
1009  specified path must be a relative path of the URL. Glob patterns such as
1010  <tt>*</tt> and <tt>?</tt> are acceptable. Changes in an excluded path will not
1011  be considered in the patch. A changeset containing changes only in the
1012  excluded path will not be considered at all.</p>
1013
1014  <p>The <tt>--organisation</tt> option can be used to specify the name of your
1015  organisation. The command will attempt to parse the commit log message for
1016  each revision in the patch. It will remove all merge templates, replace links
1017  to Trac tickets with a simple string, and add information about the original
1018  changeset. If you specify the name of your organisation, it will replace Trac
1019  ticket links such as <tt>"ticket:123"</tt> to <tt>"Original $organisation
1020  ticket 123"</tt>, and report the orginal changeset with a message such as
1021  <tt>"Original $organisation changeset 1000"</tt>. Otherwise, it will report
1022  without the organisation name, e.g. <tt>"Original ticket 123"</tt> and
1023  <tt>"Original changeset 1000"</tt>.</p>
1024
1025  <p>Within the output directory are the "patches" and the log message file for
1026  each revision. It also contains a generated script <tt>fcm-import-patch</tt>
1027  for importing the patches. The user of the script can invoke the script with
1028  either a URL or a working copy argument, and the script will attempt to import
1029  the patches into the given URL or working copy.</p>
1030
1031  <p>It is worth noting that changes in Subversion properties, including changes
1032  in executable permissions, are not handled by the import script.</p>
1033
1034  <h3><a name="fcm_svn_switch">fcm switch</a></h3>
1035
1036  <h4>Usage</h4>
1037
1038  <p>fcm switch [OPTIONS] URL [PATH]</p>
1039
1040  <p>fcm switch --relocate [OPTIONS] FROM TO [PATH]</p>
1041
1042  <h4>Description</h4>
1043
1044  <p><tt>fcm switch</tt> supports the arguments and alternate names supported by
1045  <tt>svn switch</tt>. If <tt>--relocate</tt> is specified, it supports all
1046  options supported by <tt>svn switch</tt>. Otherwise, it supports
1047  <tt>--non-interactive</tt>, <tt>-r [--revision]</tt> and <tt>-q [--quiet]</tt>
1048  only. (Please refer to the <a href=
1049  "http://svnbook.red-bean.com/en/1.2/svn.branchmerge.switchwc.html">Subversion
1050  book</a> for details).</p>
1051
1052  <p>If <tt>--relocate</tt> is specified, FCM will pass the options and
1053  arguments directly to the corresponding Subversion command. Otherwise, FCM
1054  will ensure that your working copy switches safely through the following
1055  actions:</p>
1056
1057  <ul>
1058    <li>If PATH (or the current working directory if PATH is not specified)
1059    is not at the top of a working copy, the command will automatically
1060    search for the top of the working copy, and the switch command will
1061    always apply recursively from that level.</li>
1062
1063    <li>You can specify only the "branch" part of the URL, such as "trunk",
1064    "branches/dev/fred/r1234_bob" or even "dev/fred/r1234_bob" and the
1065    command will work out the full URL for you.</li>
1066
1067    <li>If you do not specify the --non-interactive option, it checks for any
1068    local modifications in your working copy. If it finds any it reports them
1069    and asks you to confirm that you wish to continue (it aborts if not).</li>
1070
1071    <li>If you have some template messages in the <tt>#commit_message#</tt> file
1072    in the top level of your working copy, (e.g. after you have performed a
1073    merge), the command will report an error. You should remove the template
1074    message manually from the <tt>#commit_message#</tt> file before re-running
1075    <tt>switch</tt>.</li>
1076
1077    <li>The command will analyse the current working copy URL and the
1078    specified URL to ensure that they are in the same project. If your
1079    working copy is a sub-tree of a project, the command will assume that
1080    you want the same sub-tree in the new URL.</li>
1081  </ul>
1082
1083  <p>For further details refer to the section <a href=
1084  "code_management.html#svn_branching_switch">Switching your working copy to
1085  point to another branch</a>.</p>
1086
1087  <h3><a name="fcm_svn_trac">fcm trac</a></h3>
1088
1089  <h4>Usage</h4>
1090
1091  <p>fcm trac [--browser (-b) ARG] [PATH]</p>
1092
1093  <h4>Description</h4>
1094
1095  <p><tt>fcm trac</tt> invokes the web-browser to launch the corresponding
1096  URL of the web-based repository browser (currently Trac browser) to view
1097  the Subversion repository specified by PATH.</p>
1098
1099  <ul>
1100    <li>If the --browser or -b option is specified, ARG must be a valid command
1101    to a web browser. If this option is not specified, the default is to use
1102    "firefox", or whatever setting you have declared in the user configuration
1103    file (<tt>$HOME/.fcm</tt>) using the label "SET::MISC::WEB_BROWSER". For
1104    example:
1105
1106      <pre>
1107set::misc::web_browser  mozilla
1108</pre>
1109    </li>
1110
1111    <li>If PATH is specified, it must be a path to a local working copying, a
1112    Subversion URL or a FCM URL keyword. If PATH is not specified, it is set to
1113    ".", the current working directory. If PATH is a directory in the local
1114    file system, the command will determine whether it is a working copy. If
1115    so, its associated Subversion URL will be used. The command fails if the
1116    directory is not a working copy. If PATH is a Subversion URL or a FCM URL
1117    keyword, the URL can be "pegged" with a revision number using the "@"
1118    symbol. For example, to view the trunk of the FCM repository at revision
1119    400, you can use "fcm:fcm_tr@400". The URL declared by or associated with
1120    PATH must also be associated with a Trac browser URL, which is declared
1121    using the "SET::TRAC::&lt;pck&gt;" label in the FCM central/user
1122    configuration file. The command fails if an associated Trac browser URL is
1123    not found.</li>
1124  </ul>
1125
1126  <h4>Alternate Names</h4>
1127
1128  <p>www</p>
1129
1130  <h3><a name="fcm_svn_other">Other Subversion Commands</a></h3>
1131
1132  <p>Other <tt>svn</tt> commands are supported by <tt>fcm</tt> without
1133  any change in functionality, with the following minor enhancements:</p>
1134
1135  <ul>
1136    <li>Where appropriate, FCM performs repository and revision keywords
1137    expansion.</li>
1138
1139    <li>The <tt>fcm checkout</tt> command fails if you attempt to checkout into
1140    an existing working copy.</li>
1141
1142    <li>FCM prints the corresponding <tt>svn</tt> command, except for
1143    <tt>cat</tt> and any commands with the <tt>--xml</tt> option specified.</li>
1144  </ul>
1145 
1146  <p>The following is a list of the commands:</p>
1147
1148  <ul>
1149    <li><a href=
1150    "http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.blame.html">svn
1151    blame</a></li>
1152
1153    <li><a href="http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.cat.html">svn
1154    cat</a></li>
1155
1156    <li><a href=
1157    "http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.checkout.html">svn
1158    checkout</a></li>
1159
1160    <li><a href=
1161    "http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.cleanup.html">svn
1162    cleanup</a></li>
1163
1164    <li><a href="http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.copy.html">svn
1165    copy</a></li>
1166
1167    <li><a href=
1168    "http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.export.html">svn
1169    export</a></li>
1170
1171    <li><a href=
1172    "http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.import.html">svn
1173    import</a></li>
1174
1175    <li><a href="http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.info.html">svn
1176    info</a></li>
1177
1178    <li><a href="http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.list.html">svn
1179    list</a></li>
1180
1181    <li><a href="http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.log.html">svn
1182    log</a></li>
1183
1184    <li><a href="http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.lock.html">svn
1185    lock</a></li>
1186
1187    <li><a href=
1188    "http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.mkdir.html">svn
1189    mkdir</a></li>
1190
1191    <li><a href="http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.move.html">svn
1192    move</a></li>
1193
1194    <li><a href=
1195    "http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.propdel.html">svn
1196    propdel</a></li>
1197
1198    <li><a href=
1199    "http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.propedit.html">svn
1200    propedit</a></li>
1201
1202    <li><a href=
1203    "http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.propget.html">svn
1204    propget</a></li>
1205
1206    <li><a href=
1207    "http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.proplist.html">svn
1208    proplist</a></li>
1209
1210    <li><a href=
1211    "http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.propset.html">svn
1212    propset</a></li>
1213
1214    <li><a href=
1215    "http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.resolved.html">svn
1216    resolved</a></li>
1217
1218    <li><a href=
1219    "http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.revert.html">svn
1220    revert</a></li>
1221
1222    <li><a href=
1223    "http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.status.html">svn
1224    status</a></li>
1225
1226    <li><a href=
1227    "http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.unlock.html">svn
1228    unlock</a></li>
1229
1230    <li><a href=
1231    "http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.update.html">svn
1232    update</a></li>
1233  </ul>
1234
1235  <p>Please refer to the <a href=
1236  "http://svnbook.red-bean.com/en/1.2/svn.ref.html">Subversion book</a> for
1237  details of these commands.</p>
1238 
1239  <script type="text/javascript" src="maintain.js">
1240  </script>
1241</body>
1242</html>
Note: See TracBrowser for help on using the repository browser.