Dolt — версияруемая СУБД, совместимая с MySQL, которая объединяет поведение реляционной базы данных с возможностями распределённой системы контроля версий. Она реализует хранение данных и метаданных таким образом, что изменения таблиц фиксируются как коммиты в истории, поддерживаются ветвления, слияния и форки наборов данных. Интерфейс системы сочетает привычный SQL-диалект и командную строку, ориентированную на операции, аналогичные Git, включая создание веток, фиксацию изменений и просмотр истории.
Проект разработан для сценариев, где требуется отслеживание эволюции данных, совместная работа над наборами данных и воспроизводимость состояния базы в разные моменты времени. Dolt позволяет клонировать базы, работать локально с копией данных и затем синхронизировать изменения между репозиториями. В системе сохраняются детализированные метаданные о изменениях строк и схем, что облегчает аудит, откат и сравнение версий. Точные технические детали и эволюция проекта зависят от публично доступных описаний и релизов; если официальная документация неполна, общая функциональность может описываться через аналогии с системами контроля версий, применёнными к реляционным данным.
- Версионирование данных: коммиты изменений таблиц с историей, идентичной концепции в системах контроля версий.
 - Ветвление и слияние: возможность создавать независимые ветки данных и выполнять их слияние с разрешением конфликтов на уровне строк или таблиц.
 - Форк и клонирование: создание копий репозитория данных для локальной работы и последующей синхронизации.
 - SQL-совместимость: поддержка синтаксиса, совместимого с MySQL, для выполнения привычных запросов и транзакций.
 - CLI-инструменты: командная утилита для управления репозиторием данных, выполнения коммитов, пулов, пушей и просмотра истории.
 - Сравнение и диффы: механизмы для сравнения версий таблиц и получения различий между состояниями.
 - Аудит и отслеживаемость: сохранение метаданных о том, кто и когда вносил изменения, с возможностью отката к предыдущим состояниям.
 - Локальная разработка данных: поддержка рабочего процесса, при котором разработчики работают с локальными клонaми набора данных.
 - Интеграция рабочих процессов: применение подходов CI/CD и совместной работы к управлению данными, включая обзоры изменений и управление миграциями.
 - Прозрачность схемы: отслеживание изменений в структуре таблиц наряду с данными.