Fossil — свободная распределённая система управления версиями, которую разрабатывает Ричард Хипп. Ричард Хипп также является основным разработчиком СУБД SQLite.
Fossil использует в качестве хранилища всей информации базу данных SQLite.
Вся функциональность реализована в одном исполняемом файле. Размер файла около полутора мегабайт.
Помимо функциональности системы контроля версий в данный проект также заложена функциональность багтрекера, функциональность редактора и хранилища вики-страниц для более удобной работы с проектом. Также в этом проекте реализован простой HTTP-сервер. Собственно вся работа с репозиторием осуществляется через протокол HTTP.
Fossil также имеет веб-интерфейс, который может быть гибко настроен пользователем. Все настройки интерфейса также хранятся в файле репозитория. Встроенный HTTP-сервер поддерживает протокол работы с внешними приложениями CGI (Common Gateway Interface), и благодаря этому функциональность поставляемого интерфейса может быть значительно расширена.
Fossil автоматически проверяет все репозитории на целостность и непротиворечивость. Надёжность репозитория основана на использовании в качестве хранилища информации СУБД SQLite 3, которая способна обеспечить атомарность исполняемых операций.
Ссылки