dolthub / dolthub/dolt

Dolt should support file remotes pointing to dolt checkouts.

Open
#5,325 5 comments 1 reaction 1 assignee Claimed by @zachmu View on GitHub
cli enhancement version control
Dominant language
Go
Stars
24.4k
Forks
873
Avg merge
1d 5h
Merged PRs (30d)
108

Description

With something like:

```sh
$ (mkdir repo_one; cd repo_one; dolt init)
$ dolt clone file://./repo_one/.dolt/noms repo_two
$ (cd repo_two; dolt log)
```

it initially appears you can use a dolt checkout's `.dolt/noms` directory as a remote. However, the following fails:

```sh
$ (mkdir repo_one; cd repo_one; dolt init; dolt gc)
$ dolt clone file://./repo_one/.dolt/noms repo_two
```

And indeed, there is no supported way to make `repo_one/.dolt/noms` usable as a file remote from that point forward.

The current work around is to push the `repo_one` directory to a separate file remote and then clone that:

```
$ (mkdir repo_one; cd repo_one; dolt init; dolt gc; dolt backup sync-url file://./../pushed_repo_one)
$ dolt clone file://./pushed_repo_one repo_two
```

It would be natural to support using a repository's `.dolt/noms` directory directly as a file remote, especially in read-only use cases.

Related: #1860

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.