À propos du projet

Dolt est une base de données SQL qui applique un contrôle de version de type Git aux tables. Une base de données peut être forkée, clonée, branchée, fusionnée, poussée et tirée comme un dépôt Git, et le projet propose également DoltHub pour partager des bases de données publiques, DoltLab pour héberger sa propre instance, et Hosted Dolt pour un serveur géré. Connexion et clients : Dolt est livré avec un serveur compatible MySQL démarré via dolt sql-server, qui écoute par défaut sur le port 3306, et un client compatible MySQL accessible via dolt sql. Le README indique que tout client compatible MySQL peut se connecter, via TCP ou socket, et note la prise en charge jusqu’à la version 8.4 de MySQL, en recommandant la version LTS 8.4, avec un lien vers un article expliquant la configuration de caching_sha2_password pour MySQL 9.0. Surfaces de contrôle de version : l’interface en ligne de commande dolt reflète les commandes Git, notamment init, status, add, diff, reset, clean, commit, branch, checkout, merge, conflicts, cherry-pick, revert, clone, fetch, pull, push, remote, tag et blame, ainsi que des commandes orientées base de données telles que sql, sql-server, schema, table, dump, backup, migrate, read-tables, filter-branch et gc. En SQL, les opérations de lecture sont exposées en tant que tables système (par exemple dolt_log, dolt_status, et les tables système de diff par table) et les opérations d’écriture en tant que procédures stockées suivant le modèle de nommage dolt_command, telles que dolt_add et dolt_commit. Le passage d’options suit le modèle de la ligne de commande, et la variable système dolt_transaction_commit peut générer un commit Dolt pour chaque transaction. Un commit Dolt est décrit comme différent d’un commit de transaction SQL standard. Fonctionnalités de la base de données : Dolt prend en charge les clés étrangères, les index secondaires, les déclencheurs, les contraintes de vérification et les procédures stockées, et la démonstration montre une jointure entre trois tables, indiquant la prise en charge de jusqu’à douze jointures de tables. La documentation de la démonstration couvre la création d’un schéma, l’insertion de données, l’examen des diffs avant le commit, et l’inspection du log. Installation : Dolt est distribué sous la forme d’un binaire unique d’environ 103 mégaoctets. Les options d’installation incluent un script d’installation pour Linux et macOS qui place le binaire dans /usr/local/bin, des packages Arch Linux, Homebrew, un port MacPorts communautaire, un installateur MSI pour Windows, Chocolatey, des images Docker officielles (dolthub/dolt pour l’interface en ligne de commande et dolthub/dolt-sql-server pour le mode serveur), ou la compilation à partir des sources avec Go et une chaîne d’outils C en raison d’une dépendance cgo. Le nom d’utilisateur et l’adresse e-mail sont configurés avec dolt config, à l’instar de Git. Écosystème : le README mentionne Doltgres, une variante orientée Postgres en version bêta, une communauté Discord, une feuille de route publique, une introduction vidéo, et des exemples d’utilisation tels que l’alimentation de Beads et Gas Town, positionnant Dolt comme une base de données pour la mémoire d’agent dans des workflows multi-agents et multi-machines.