Version Control Features

Unlike other relational databases, Doltgres 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 is 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 Doltgres clones.

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

  • Functions documents Doltgres-provided functions that aren't part of standard Postgres, 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 Doltgres-provided system variables that expose and control various aspects of Doltgres's behavior.

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

Last updated