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