11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
|
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
|
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
-
+
+
+
-
+
-
-
+
+
-
-
+
+
-
+
+
-
+
-
+
-
+
-
-
+
+
|
<h3>Things to note</h3>
* Fossil cli commands do not use special delimeters, they use spaces.
This is traditional with VCS/SCM. Some <i>options</i> to fossil commands
<i>do</i> use special delimiters, particularly the '-' (hyphen, or dash)
character. This is very similar to Tcl. Think of fossil as a shell you
invoke and feed a command to, including any options, and it will make
more sense.
* A <u>version</u> in <b>fossil</b> is 40 character hexadecimal string.
<b>fossil</b> will be able to figure out which version you want with any
prefix of that string that is distinct from all others. <em>Commands
which require a version are looking for that string, the unique prefix,
or a <code>tag</code>.</em>
* Any fossil command is acceptable once enough of it has been
entered to make the intent unambiguous. 'clo' is a proper prefix of
both the 'clone' and 'close' commands, for instance, but 'clon' is
enough to make the intent—the 'clone' command—unambiguous.
You should probably start interacting with fossil at the command line
by asking it what it can do: <a name="tof">ˆ</a>
<code>$ fossil help</code><nowiki><pre>
Usage: fossil help COMMAND.
Available COMMANDs:</pre><table width="80%" style="font-family: fixed, courier, monospace; ">
<tr>
<td><a href="#add">add</a></td>
<td><a href="#add">add</a>*</td>
<td><a href="#configure">configuration</a></td>
<td><a href="#leaves">leaves</a></td>
<td><a href="#redo">redo</a></td>
<td><a href="#server">ui</a></td>
<td><a href="#timeline">timeline</a></td>
</tr>
<tr>
<td><a href="#all">all</a></td>
<td><a href="#all">all</a>*</td>
<td><a href="#deconstruct">deconstruct</a></td>
<td><a href="#ls">ls</a></td>
<td><a href="#ls">ls</a>*</td>
<td><a href="#mv">rename</a></td>
<td><a href="#undo">undo</a></td>
<td><a href="#server">ui</a></td>
</tr>
<tr>
<td><a href="#cgi">cgi</a></td>
<td><a href="#rm">del</a></td>
<td><a href="#merge">merge</a></td>
<td><a href="#revert">revert</a></td>
<td><a href="#setting">unset</a></td>
<td><a href="#undo">undo</a></td>
</tr>
<tr>
<td><a href="#changes">changes</a></td>
<td><a href="#changes">changes</a>*</td>
<td><a href="#descendants">descendants</a></td>
<td><a href="#mv">mv</a></td>
<td><a href="#rm">rm</a></td>
<td><a href="#update">update</a></td>
<td><a href="#setting">unset</a></td>
</tr>
<tr>
<td><a href="#checkout">checkout</a></td>
<td><a href="#checkout">checkout</a>*</td>
<td><a href="#diff">diff</a></td>
<td><a href="#new">new</a></td>
<td><a href="#server">server</a></td>
<td><a href="#user">user</a></td>
<td><a href="#new">new</a>*</td>
<td><a href="#rstats">rstats</a></td>
<td><a href="#update">update</a>*</td>
</tr>
<tr>
<td><a href="#commit">ci</a></td>
<td><a href="#extra">extra</a></td>
<td><a href="#extra">extra</a>*</td>
<td><a href="#open">open</a></td>
<td><a href="#setting">settings</a></td>
<td><a href="#version">version</a></td>
<td><a href="#server">server</a></td>
<td><a href="#user">user</a></td>
</tr>
<tr>
<td><a href="#clean">clean</a></td>
<td><a href="#diff">gdiff</a></td>
<td><a href="#pull">pull</a></td>
<td><a href="#status">status</a></td>
<td><a href="#wiki">wiki</a></td>
<td><a href="#setting">settings</a></td>
<td><a href="#version">version</a>*</td>
</tr>
<tr>
<td><a href="#clone">clone</a></td>
<td><a href="#help">help</a></td>
<td><a href="#push">push</a></td>
<td><a href="#sync">sync</a></td>
<td><a href="#status">status</a>*</td>
<td><a href="#wiki">wiki</a></td>
</tr>
<tr>
<td><a href="#close">close</a></td>
<td><a href="#http">http</a></td>
<td><a href="#rebuild">rebuild</a></td>
<td><a href="#tag">tag</a></td>
<td><a href="#sync">sync</a>*</td>
</tr>
<tr>
<td><a href="#commit">commit</a></td>
<td><a href="#info">info</a></td>
<td><a href="#reconstruct">reconstruct</a></td>
<td><a href="#timeline">timeline</a></td>
<td><a href="#tag">tag</a></td>
</tr>
</table><nowiki><pre>
This is fossil version [2be82dcc2a] 2008-12-07 18:48:09 UTC
This is fossil version [ba837fd294] 2008-12-16 18:39:29 UTC
</pre>
<b>What follows</b> is a survey of what you get if you type<code>
fossil help <i>command</i> </code>for all of the
commands listed above. There are links to individual pages for each
of them; pages with content (not all of them are done) go into the command
in a bit more depth than the program help.
of them; pages with content (commands marked with a '*' are done) go
into the reason for a command in a bit more depth than the program help.
<pre>
<hr><a href="#tof">ˆ</a>
<a name="add">Usage: </a><code><a href="cmd_add.wiki">fossil add</a></code> FILE...
Make arrangements to add one or more files to the current checkout
at the next commit.
<hr><a href="#tof">ˆ</a>
|
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
|
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
|
+
+
+
+
+
+
+
|
<a name="mv">Usage: </a><a href="cmd_mv.wiki">fossil mv|rename</a> OLDNAME NEWNAME or: fossil mv|rename OLDNAME... DIR
Move or rename one or more files within the tree
This command does not rename the files on disk. All this command does is
record the fact that filenames have changed so that appropriate notations
can be made at the next commit/checkin.
<hr><a href="#tof">ˆ</a>
<a name="new">Usage: </a><a href="cmd_new.wiki">fossil new</a> FILENAME
Create a repository for a new project in the file named FILENAME.
This command is distinct from "clone". The "clone" command makes
a copy of an existing project. This command starts a new project.
<hr><a href="#tof">ˆ</a>
<a name="open">Usage: </a><a href="cmd_open.wiki">fossil open</a> FILENAME
Open a connection to the local repository in FILENAME. A checkout
for the repository is created with its root at the working directory.
See also the "close" command.
<hr><a href="#tof">ˆ</a>
<a name="rstats">Usage: </a><a href="cmd_rstats.wiki">fossil rstats</a>
Deliver a report of the repository statistics for the
current checkout.
<hr><a href="#tof">ˆ</a>
<a name="pull">Usage: </a><a href="cmd_pull.wiki">fossil pull</a> ?URL? ?-R|--respository REPOSITORY?
Pull changes in a remote repository into the local repository.
The repository is identified by the -R or --repository option.
If there is no such option then the open repository is used.
The URL of the remote server is specified on the command line
|
349
350
351
352
353
354
355
356
357
358
359
360
361
362
|
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
|
+
|
specifies the TCP port of the server. The default port is
80.
<hr><a href="#tof">ˆ</a>
<a name="push">Usage: </a><a href="cmd_push.wiki">fossil push</a> ?URL? ?-R|--repository REPOSITORY?
Push changes in the local repository over into a remote repository.
See the "pull" command for additional information.
<hr><a href="#tof">ˆ</a>
<a name="rebuild">Usage: </a><a href="cmd_rebuild.wiki">fossil rebuild</a> REPOSITORY
Reconstruct the named repository database from the core
records. Run this command after updating the fossil
executable in a way that changes the database schema.
<hr><a href="#tof">ˆ</a>
|