diff options
Diffstat (limited to 'development/fossil/README')
-rw-r--r-- | development/fossil/README | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/development/fossil/README b/development/fossil/README index f72d81f8bf..d3571a0b50 100644 --- a/development/fossil/README +++ b/development/fossil/README @@ -20,6 +20,12 @@ Features: - nested checkouts to share common subtrees across related projects - checkout directory not cluttered with administrative files - support for Docker +- unversioned file area for builds, statistics, other ephemeral content +- optional PGP signing of commits +- private branch which are excluded from syncs until published +- bundles group a change set (e.g. a private branch) into a single file +- users can make their own repositories, no need for special privileges +- works in Windows as well as Linux and other Unix-like systems Fossil can host the entire project development website, including the download area, but it also can be used for individual projects with no @@ -38,3 +44,14 @@ See Fossil in action online: - https://sqlite.org/src/ - Fossil originally created to manage SQLite - https://core.tcl.tk/tcl/timeline?y=ci - Tcl/Tk migrated from CVS - https://chiselapp.com/ - Free public hosting for Fossil projects + +Key technical points: + +- unified revision history tree spans the entire repository +- repository is a collection of artifacts identified by their checksums +- artifacts are broadly grouped into content and structural artifacts +- each check-in is tracked as a structural artifact known as a manifest +- manifests primarily list the full names and checksums of each file +- manifests can be amended by subsequent control artifacts +- in most cases, symbolic names refer to the latest matching check-in +- branches are implemented using propagating symbolic tags |