Fossil

Бесплатно
Открытый исходный код
Windows
macOS
Linux

Сайт: fossil-scm.org

Fossil — распределённая система управления версиями программного обеспечения, объединяющая в одном исполняемом файле механизмы контроля версий, багтрекер, вики и встроенный веб-интерфейс. Проект был разработан с целью предоставить компактный, самодостаточный инструмент для ведения репозиториев, при котором все данные хранятся в единичном файле базы данных SQLite. Архитектура Fossil ориентирована на простоту развертывания, прозрачность истории и удобный доступ к метаданным разработки через веб-интерфейс.

Fossil поддерживает типичные для распределённых систем операции — фиксации изменений, ветвление, слияние и клонирование — и дополнительно обеспечивает встроенные средства для отслеживания задач, ведения документации и обсуждений, привязанных к изменениям в коде. Управление репозиториями осуществляется как через командную строку, так и через веб-интерфейс, который может работать в режиме локального сервера или встраиваться в процессы совместной работы. Одной из ключевых особенностей является акцент на целостности данных и возможности воспроизвести историю проекта без внешних зависимостей.

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