dolt
Dolt is a command-line tool created by the company DoltHub, which extends the capabilities of the Git version control system to allow for an entire database to be version controlled. Similar to Git, Dolt brings the benefits of versioning and collaboration to databases, enabling users to track changes, roll back to previous versions, and merge changes from multiple users.
Dolt operates on an SQL-based database and provides commands for cloning and creating new databases, committing changes, branching, merging, and more. It supports standard SQL operations like querying, inserting, updating, and deleting data, making it familiar and easy to work with for SQL users.
One of the key features of Dolt is its ability to work offline and allow for distributed collaboration. Like Git, it maintains a full version history locally, which enables users to perform operations and switch branches without requiring constant network connectivity. Changes can be synchronized and merged with remote repositories when an internet connection is available.
Dolt also offers a web-based interface called DoltHub, where users can host their Dolt databases and collaborate with others. DoltHub provides features like pull requests, access control, and the ability to explore and download databases shared by others.
Overall, Dolt provides a powerful and flexible version control system for databases, allowing users to manage their data and collaborate effectively in a familiar SQL environment.
List of commands for dolt:
-
dolt-add:tldr:40b9c dolt-add: Stage all tables.$ dolt add --alltry on your machineexplain this command
-
dolt-add:tldr:58b7c dolt-add: Add a table to the list of staged tables (stage a table).$ dolt add ${table}try on your machineexplain this command
-
dolt-blame:tldr:a5030 dolt-blame: Display the latest commit for each row of a table.$ dolt blame ${table}try on your machineexplain this command
-
dolt-blame:tldr:e0212 dolt-blame: View help.$ dolt blame --helptry on your machineexplain this command
-
dolt-blame:tldr:e3887 dolt-blame: Display the latest commits for each row of a table when the specified commit was made.$ dolt blame ${commit} ${table}try on your machineexplain this command
-
dolt-branch:tldr:27dc8 dolt-branch: Create a new branch with the specified commit as the latest.$ dolt branch ${branch_name} ${commit}try on your machineexplain this command
-
dolt-branch:tldr:5782c dolt-branch: Display the name of the current branch.$ dolt branch --show-currenttry on your machineexplain this command
-
dolt-branch:tldr:8a78f dolt-branch: Delete a branch.$ dolt branch --delete ${branch_name}try on your machineexplain this command
-
dolt-branch:tldr:b6817 dolt-branch: Create a new branch based on the current branch.$ dolt branch ${branch_name}try on your machineexplain this command
-
dolt-branch:tldr:d82f9 dolt-branch: Rename a branch.$ dolt branch --move ${branch_name1} ${branch_name2}try on your machineexplain this command
-
dolt-branch:tldr:e49c7 dolt-branch: List all local and remote branches.$ dolt branch --alltry on your machineexplain this command
-
dolt-branch:tldr:ebea1 dolt-branch: Duplicate a branch.$ dolt branch --copy ${branch_name1} ${branch_name2}try on your machineexplain this command
-
dolt-branch:tldr:fb45d dolt-branch: List local branches (current branch is highlighted by `*`).$ dolt branchtry on your machineexplain this command
-
dolt-checkout:tldr:6b34c dolt-checkout: Create new branch based on a specified commit and switch to it.$ dolt checkout -b ${branch_name} ${commit}try on your machineexplain this command
-
dolt-checkout:tldr:8a35e dolt-checkout: Switch to a branch.$ dolt checkout ${branch_name}try on your machineexplain this command
-
dolt-checkout:tldr:eb73c dolt-checkout: Create new branch and switch to it.$ dolt checkout -b ${branch_name}try on your machineexplain this command
-
dolt-clone:tldr:51aaf dolt-clone: Clone a repository, using an AWS credentials type.$ dolt clone --aws-creds-type ${credentials_type} ${repository_url}try on your machineexplain this command
-
dolt-clone:tldr:73ff2 dolt-clone: Clone a repository, using an AWS credentials profile (uses the default profile if none is provided).$ dolt clone --aws-creds-profile ${profile_name} ${repository_url}try on your machineexplain this command
-
dolt-clone:tldr:a6fa2 dolt-clone: Clone an existing repository and add a specific remote (defaults to origin).$ dolt clone --remote ${remote_name} ${repository_url}try on your machineexplain this command
-
dolt-clone:tldr:b56dd dolt-clone: Clone an existing repository only fetching a specific branch (defaults to all branches).$ dolt clone --branch ${branch_name} ${repository_url}try on your machineexplain this command
-
dolt-clone:tldr:b6632 dolt-clone: Clone a repository, using an AWS credentials file.$ dolt clone --aws-creds-file ${credentials_file} ${repository_url}try on your machineexplain this command
-
dolt-clone:tldr:d0475 dolt-clone: Clone an existing repository into a specific directory (defaults to the repository name).$ dolt clone ${repository_url} ${path-to-directory}try on your machineexplain this command
-
dolt-clone:tldr:e0f1d dolt-clone: Clone a repository, using an AWS region (uses the profile's default region if none is provided).$ dolt clone --aws-region ${region_name} ${repository_url}try on your machineexplain this command
-
dolt-commit:tldr:14009 dolt-commit: Use the specified author for the commit.$ dolt commit --author "${author_name} <${author_email}>"try on your machineexplain this command
-
dolt-commit:tldr:35939 dolt-commit: Commit all staged changes, opening the editor specified by `$EDITOR` to enter the commit message.$ dolt committry on your machineexplain this command
-
dolt-commit:tldr:5e7bd dolt-commit: Commit all staged changes with the specified message.$ dolt commit --message "${commit_message}"try on your machineexplain this command
-
dolt-commit:tldr:6944b dolt-commit: Stage all unstaged changes to tables before committing.$ dolt commit --alltry on your machineexplain this command
-
dolt-commit:tldr:87378 dolt-commit: Use the specified ISO 8601 commit date (defaults to current date and time).$ dolt commit --date "${2021-12-31T00:00:00}"try on your machineexplain this command
-
dolt-commit:tldr:8d8e5 dolt-commit: Ignore foreign key warnings.$ dolt commit --forcetry on your machineexplain this command
-
dolt-commit:tldr:c2889 dolt-commit: Allow creating an empty commit, with no changes.$ dolt commit --allow-emptytry on your machineexplain this command
-
dolt-config:tldr:59db0 dolt-config: List all local and global configuration options and their values.$ dolt config --listtry on your machineexplain this command
-
dolt-config:tldr:6da0f dolt-config: Delete a global configuration variable.$ dolt config --global --unset ${name}try on your machineexplain this command
-
dolt-config:tldr:9a16c dolt-config: Delete a local configuration variable.$ dolt config --unset ${name}try on your machineexplain this command
-
dolt-config:tldr:a4c3d dolt-config: Modify the value of a local configuration variable, creating it if it doesn't exist.$ dolt config --add ${name} ${value}try on your machineexplain this command
-
dolt-config:tldr:cfb0c dolt-config: Display the value of a local or global configuration variable.$ dolt config --get ${name}try on your machineexplain this command
-
dolt-config:tldr:e7693 dolt-config: Modify the value of a global configuration variable, creating it if it doesn't exist.$ dolt config --global --add ${name} ${value}try on your machineexplain this command
-
dolt-fetch:tldr:0a2bd dolt-fetch: Fetch the latest changes from the default remote upstream repository (origin).$ dolt fetchtry on your machineexplain this command
-
dolt-fetch:tldr:0d326 dolt-fetch: Update branches with the current state of the remote, overwriting any conflicting history.$ dolt fetch -ftry on your machineexplain this command
-
dolt-fetch:tldr:bf70b dolt-fetch: Fetch latest changes from a specific remote upstream repository.$ dolt fetch ${remote_name}try on your machineexplain this command
-
dolt-init:tldr:69bd4 dolt-init: Initialize a new Dolt data repository in the current directory.$ dolt inittry on your machineexplain this command
-
dolt-init:tldr:b9bed dolt-init: Initialize a new Dolt data repository creating a commit with the specified metadata.$ dolt init --name "${name}" --email "${email}" --date "${2021-12-31T00:00:00}" -b "${branch_name}"try on your machineexplain this command
-
dolt-merge:tldr:475e5 dolt-merge: Incorporate changes from the named commits into the current branch.$ dolt merge ${branch_name}try on your machineexplain this command
-
dolt-merge:tldr:a4e51 dolt-merge: Merge a branch and create a merge commit even when the merge resolves as a fast-forward.$ dolt merge --no-ff ${branch_name}try on your machineexplain this command
-
dolt-merge:tldr:c5905 dolt-merge: Merge a branch and create a merge commit with a specific commit message.$ dolt merge --no-ff -m "${message}" ${branch_name}try on your machineexplain this command
-
dolt-merge:tldr:cf104 dolt-merge: Incorporate changes from the named commits into the current branch without updating the commit history.$ dolt merge --squash ${branch_name}try on your machineexplain this command
-
dolt-merge:tldr:d23ac dolt-merge: Abort the current conflict resolution process.$ dolt merge --aborttry on your machineexplain this command
-
dolt-sql:tldr:7bc89 dolt-sql: List all saved queries.$ dolt sql --list-savedtry on your machineexplain this command
-
dolt-sql:tldr:809c1 dolt-sql: Run a single query.$ dolt sql --query "${INSERT INTO t values (1, 3);}"try on your machineexplain this command
-
dolt-status:tldr:40ca9 dolt-status: Display the status.$ dolt statustry on your machineexplain this command
-
dolt-version:tldr:e659e dolt-version: Display version.$ dolt versiontry on your machineexplain this command
-
dolt:tldr:7840a dolt: List available subcommands.$ dolt helptry on your machineexplain this command