Version Control Features

Unlike other relational databases, Dolt has multiple branches and stores all data in a commit graph, like git. This makes it possible to efficiently diff any two commits, as well as merge one branch into another. All the git-like version control functionality available on the Dolt CLI is available in the SQL server as well, exposed as system tables, system variables, functions, and stored procedures.

Version control overview

  • Using Branches explains how to work with different branches in a running server.

  • Merges explains how to merge branches into one another and resolve merge conflicts using SQL.

  • Querying History describes how to query past revisions or different branches of a database.

  • Using Remotes describes how to use remotes to coordinate between Dolt clones.

  • Stored procedures documents all the stored procedures that implement version control operations such as DOLT_COMMIT, DOLT_CHECKOUT, DOLT_MERGE, etc.

  • Functions documents Dolt-provided functions that aren't part of standard MySQL, including table functions that produce diffs of any table at two points in its history.

  • System tables describes the system tables that provide read access to version control information, such as branches, commit log, diffs, and conflicts.

  • System variables documents all the Dolt-provided system variables that expose and control various aspects of Dolt's behavior.

  • Saved Queries documents a Dolt feature to save queries for later execution.

Last updated