<title>A Coherent Software Configuration Management System</title>
<h3>What Is It?</h3>
<div class="nomargins" style='float:right;border:2px solid #446979;padding:0 15px 10px 0;margin:0 50px 0 10px'>
<ul>
<li> [/uv/download.html | Download]
<li> [./quickstart.wiki | Quick Start]
<li> [./build.wiki | Install]
<li> [https://fossil-scm.org/forum | Support/Forum ]
<li> [./hints.wiki | Tips & Hints]
<li> [./changes.wiki | Change Log]
<li> [../COPYRIGHT-BSD2.txt | License]
<li> [./userlinks.wiki | User Links]
<li> [./hacker-howto.wiki | Hacker How-To]
<li> [./fossil-v-git.wiki | Fossil vs. Git]
<li> [./permutedindex.html | Doc Index]
</ul>
<p style="text-align:center"><img src="fossil3.gif" alt="Fossil logo"></p>
</div>
Fossil is a simple, high-reliability, distributed
[https://en.wikipedia.org/wiki/Software_configuration_management | SCM]
system with these advanced features:
1. <b>Project Management</b> —
In addition to doing [./concepts.wiki | distributed version control]
like Git and Mercurial,
Fossil also supports [./bugtheory.wiki | bug tracking],
[./wikitheory.wiki | wiki], [./forum.wiki | forum],
[./alerts.md|email alerts], [./chat.md | chat], and
[./event.wiki | technotes].
2. <b>Built-in Web Interface</b> —
Fossil has a built-in, [/skins | themeable], [./serverext.wiki | extensible],
and intuitive [./webui.wiki | web interface]
with a rich variety of information pages
([./webpage-ex.md|examples]) promoting situational awareness.
<br><br>
This entire website is just a running instance of Fossil.
The pages you see here are all [./wikitheory.wiki | wiki] or
[./embeddeddoc.wiki | embedded documentation] or (in the case of
the [/uv/download.html|download] page)
[./unvers.wiki | unversioned files].
When you clone Fossil from one of its
[./selfhost.wiki | self-hosting repositories],
you get more than just source code — you get this entire website.
3. <b>All-in-one</b> —
Fossil is a single self-contained, stand-alone executable.
To install, simply download a
[/uv/download.html | precompiled binary]
for Linux, Mac, or Windows and put it on your $PATH.
[./build.wiki | Easy-to-compile source code] is also available.
4. <b>Self-host Friendly</b> — Stand up a project website
in minutes using [./server/ | a variety of techniques].
Fossil is CPU and memory efficient. Most projects can be
hosted comfortably on a $5/month VPS or a Raspberry Pi.
You can also set up an automatic
[./mirrortogithub.md | GitHub mirror].
5. <b>Simple Networking</b> —
Fossil uses ordinary HTTPS (or SSH if you prefer)
for network communications, so it works fine from behind
firewalls and [./quickstart.wiki#proxy|proxies].
The protocol is
[./stats.wiki | bandwidth efficient] to the point that Fossil can be
used comfortably over dial-up, weak 3G, or airliner Wifi.
6. <b>Autosync</b> —
Fossil supports [./concepts.wiki#workflow | "autosync" mode]
which helps to keep projects moving
forward by reducing the amount of needless
[./branching.wiki | forking and merging] often
associated with distributed projects.
7. <b>Robust & Reliable</b> —
Fossil stores content using an [./fileformat.wiki | enduring file format]
in an SQLite database so that transactions are
atomic even if interrupted by a power loss or system crash.
Automatic [./selfcheck.wiki | self-checks] verify that all aspects of
the repository are consistent prior to each commit.
8. <b>Free and Open-Source</b> — [../COPYRIGHT-BSD2.txt|2-clause BSD license].
<hr>
<h3>Latest Release: 2.24 ([/timeline?c=version-2.24|2024-04-23])</h3>
* [/uv/download.html|Download]
* [./changes.wiki#v2_24|Change Summary]
* [/timeline?p=version-2.24&bt=version-2.23&y=ci|Check-ins in version 2.24]
* [/timeline?df=version-2.24&y=ci|Check-ins derived from the 2.24 release]
* [/timeline?t=release|Timeline of all past releases]
<hr>
<h3>Quick Start</h3>
1. [/uv/download.html|Download] or install using a package manager or
[./build.wiki|compile from sources].
2. <tt>fossil init</tt> <i>REPOSITORY-DIR/new-repository</i>
3. <tt>fossil open</tt> <i>REPOSITORY-DIR/new-repository</i>
4. <tt>fossil add</tt> <i>files-or-directories</i>
5. <tt>fossil commit -m</tt> "<i>commit message</i>"
6. <tt>fossil ui</tt>
7. Repeat steps 4, 5, and 6, in any order, as necessary.
See the [./quickstart.wiki|Quick Start Guide] for more detail.