Fossil SCM

Expanded the "Starting A New Project" section of the Quick Start doc to cover the next few common steps. Also updated the "fossil version" example above it to the current release version to keep the doc from looking *too* outdated.

wyoung 2025-03-30 11:08 trunk
Commit 4f42caee47ecea10111ee83fbbd1c1db9b4ae9ef41b3ea8681793d77b4a51314
1 file changed +29 -3
--- www/quickstart.wiki
+++ www/quickstart.wiki
@@ -14,11 +14,11 @@
1414
someplace on your $PATH.
1515
1616
You can test that Fossil is present and working like this:
1717
1818
<pre><b>fossil version
19
-This is fossil version 2.13 [309af345ab] 2020-09-28 04:02:55 UTC
19
+This is fossil version 2.25 [8f798279d5] 2024-11-06 12:59:09 UTC
2020
</b></pre>
2121
2222
<h2 id="workflow" name="fslclone">General Work Flow</h2>
2323
2424
Fossil works with repository files (a database in a single file with the project's
@@ -48,12 +48,38 @@
4848
4949
<pre><b>fossil init</b> <i>repository-filename</i>
5050
</pre>
5151
5252
You can name the database anything you like, and you can place it anywhere in the filesystem.
53
-The <tt>.fossil</tt> extension is traditional but only required if you are going to use the
54
-<tt>[/help/server | fossil server DIRECTORY]</tt> feature.”
53
+The <tt>.fossil</tt> extension is traditional, but it is only required if you are going to use the
54
+<tt>[/help/server | fossil server DIRECTORY]</tt> feature.
55
+
56
+Next, do something along the lines of:
57
+
58
+<pre>
59
+<b>mkdir -p ~/src/project/trunk</b>
60
+<b>cd ~/src/project/trunk</b>
61
+<b>fossil open</b> <i>repository-filename</i>
62
+<b>fossil add</b> foo.c bar.h qux.md
63
+<b>fossil commit</b>
64
+</pre>
65
+
66
+If your project directory already exists, obviating the <b>mkdir</b>
67
+step, you will instead need to add the <tt>--force</tt> flag to the
68
+<b>open</b> command to authorize Fossil to open the repo into a
69
+non-empty checkout directory. (This is to avoid accidental opens into,
70
+for example, your home directory.)
71
+
72
+The convention of naming your checkout directory after a long-lived
73
+branch name like "trunk" is in support of Fossil's ability to have as
74
+many open checkouts as you like. This author frequently has additional
75
+checkout directories named <tt>../release</tt>, <tt>../scratch</tt>,
76
+etc. The release directory is open to the branch of the same name, while
77
+the scratch directory is used when disturbing one of the other
78
+long-lived checkout directories is undesireable, as when performing a
79
+[/help/bisect | bisect] operation.
80
+
5581
5682
<h2 id="clone">Cloning An Existing Repository</h2>
5783
5884
Most fossil operations interact with a repository that is on the
5985
local disk drive, not on a remote system. Hence, before accessing
6086
--- www/quickstart.wiki
+++ www/quickstart.wiki
@@ -14,11 +14,11 @@
14 someplace on your $PATH.
15
16 You can test that Fossil is present and working like this:
17
18 <pre><b>fossil version
19 This is fossil version 2.13 [309af345ab] 2020-09-28 04:02:55 UTC
20 </b></pre>
21
22 <h2 id="workflow" name="fslclone">General Work Flow</h2>
23
24 Fossil works with repository files (a database in a single file with the project's
@@ -48,12 +48,38 @@
48
49 <pre><b>fossil init</b> <i>repository-filename</i>
50 </pre>
51
52 You can name the database anything you like, and you can place it anywhere in the filesystem.
53 The <tt>.fossil</tt> extension is traditional but only required if you are going to use the
54 <tt>[/help/server | fossil server DIRECTORY]</tt> feature.”
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
55
56 <h2 id="clone">Cloning An Existing Repository</h2>
57
58 Most fossil operations interact with a repository that is on the
59 local disk drive, not on a remote system. Hence, before accessing
60
--- www/quickstart.wiki
+++ www/quickstart.wiki
@@ -14,11 +14,11 @@
14 someplace on your $PATH.
15
16 You can test that Fossil is present and working like this:
17
18 <pre><b>fossil version
19 This is fossil version 2.25 [8f798279d5] 2024-11-06 12:59:09 UTC
20 </b></pre>
21
22 <h2 id="workflow" name="fslclone">General Work Flow</h2>
23
24 Fossil works with repository files (a database in a single file with the project's
@@ -48,12 +48,38 @@
48
49 <pre><b>fossil init</b> <i>repository-filename</i>
50 </pre>
51
52 You can name the database anything you like, and you can place it anywhere in the filesystem.
53 The <tt>.fossil</tt> extension is traditional, but it is only required if you are going to use the
54 <tt>[/help/server | fossil server DIRECTORY]</tt> feature.
55
56 Next, do something along the lines of:
57
58 <pre>
59 <b>mkdir -p ~/src/project/trunk</b>
60 <b>cd ~/src/project/trunk</b>
61 <b>fossil open</b> <i>repository-filename</i>
62 <b>fossil add</b> foo.c bar.h qux.md
63 <b>fossil commit</b>
64 </pre>
65
66 If your project directory already exists, obviating the <b>mkdir</b>
67 step, you will instead need to add the <tt>--force</tt> flag to the
68 <b>open</b> command to authorize Fossil to open the repo into a
69 non-empty checkout directory. (This is to avoid accidental opens into,
70 for example, your home directory.)
71
72 The convention of naming your checkout directory after a long-lived
73 branch name like "trunk" is in support of Fossil's ability to have as
74 many open checkouts as you like. This author frequently has additional
75 checkout directories named <tt>../release</tt>, <tt>../scratch</tt>,
76 etc. The release directory is open to the branch of the same name, while
77 the scratch directory is used when disturbing one of the other
78 long-lived checkout directories is undesireable, as when performing a
79 [/help/bisect | bisect] operation.
80
81
82 <h2 id="clone">Cloning An Existing Repository</h2>
83
84 Most fossil operations interact with a repository that is on the
85 local disk drive, not on a remote system. Hence, before accessing
86

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button