The seventh anniversary of the first self-commit of Fossil source code was
this past Monday.  Time flies.

The logical predecessor of Fossil was CVSTrac (
which was a wiki and trouble-ticket system built atop CVS.  CVSTrac became
the inspiration for Trac ( which is a
similar tool for SVN that became far more popular than CVSTrac and which is
still in active use.  Fossil was originally created to provide features
needed in SQLite development, features that I couldn't get with
CVS+CVSTrac, or with Monotone or Git or Mercurial or any other
configuration management system available at the time.  I worked on
prototypes of Fossil for a year or more prior to the first self-commit on
2007-07-21, but none of those early prototypes survive.

Code archeologists will be able to find a lot of commonality between the
CVSTrac and Fossil source codes.  There is a clear genetic relationship
between the two systems.

Fossil was created for the purpose of aiding in the development of SQLite.
(Other uses for Fossil, though welcomed, are secondary.)  The SQLite
documentation sources (
were split off from the SQLite source tree in CVS on 2007-11-12, just a few
months after Fossil began self-hosting.  But the core SQLite source code
did not move to Fossil until 2009-08-11, just after the release of SQLite
version 3.6.17, over two years after Fossil became self-hosting.  The move
from CVS to Fossil has proven to be a boon for SQLite development.

CVSTrac was in active use by SQLite for a little over 7 years.  To my
knowledge, nobody uses CVSTrac any more.  (OpenSSL was the last known user
of CVSTrac and they switched over to Git at the beginning of 2013.) Fossil
will soon overtake CVSTrac in terms of years of use, and Fossil has a great
deal more momentum and a much larger user base than CVSTrac ever had.

D. Richard Hipp
fossil-users mailing list

Reply via email to