Fossil — распределённая система управления версиями программного обеспечения, объединяющая в одном исполняемом файле механизмы контроля версий, багтрекер, вики и встроенный веб-интерфейс. Проект был разработан с целью предоставить компактный, самодостаточный инструмент для ведения репозиториев, при котором все данные хранятся в единичном файле базы данных SQLite. Архитектура Fossil ориентирована на простоту развертывания, прозрачность истории и удобный доступ к метаданным разработки через веб-интерфейс.
Fossil поддерживает типичные для распределённых систем операции — фиксации изменений, ветвление, слияние и клонирование — и дополнительно обеспечивает встроенные средства для отслеживания задач, ведения документации и обсуждений, привязанных к изменениям в коде. Управление репозиториями осуществляется как через командную строку, так и через веб-интерфейс, который может работать в режиме локального сервера или встраиваться в процессы совместной работы. Одной из ключевых особенностей является акцент на целостности данных и возможности воспроизвести историю проекта без внешних зависимостей.
- Формат хранения: единый файл базы данных SQLite, содержащий историю коммитов, тикеты, страницы вики и другие артефакты.
 - Интегрированный веб-интерфейс: встроенный HTTP-сервер для просмотра истории, диффов, тикетов и страниц вики через браузер.
 - Багтрекер: система тикетов с возможностью связывать задачи с конкретными коммитами и обсуждениями.
 - Вики: встроенная система документации с историей правок и возможностью связывать страницы с задачами и изменениями.
 - Децентрализованный контроль версий: поддержка распределённых операций клонирования, отправки и получения изменений между репозиториями.
 - Целостность и проверяемость: криптографические хэши для фиксаций, обеспечивающие обнаружение и защиту от подмены истории.
 - Лёгкость развертывания: один исполняемый файл без необходимости дополнительной серверной инфраструктуры или СУБД.
 - Интеграция задач и кода: привязка тикетов, вики-страниц и обсуждений к конкретным изменениям в репозитории.
 - Кроссплатформенность: исполнение на разных операционных системах с одинаковой моделью хранения и доступа.
 - Управление ветвлениями и мержами: средства для работы с ветками, метками и объединением изменений с ведением истории.