---
name: "public-inbox-clone"
section: "1"
platform: "linux"
package: "public-inbox"
version: "1.9.0-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/public-inbox-clone"
---

# public-inbox-clone(1)

"git clone --mirror" wrapper

## NAME

public-inbox-clone - "git clone --mirror" wrapper

## SYNOPSIS

public-inbox-clone INBOX\_URL \[INBOX\_DIR\]

## DESCRIPTION

public-inbox-clone is a wrapper around `"git clone --mirror"` for making the initial clone of a remote HTTP(S) public-inbox.  It allows cloning multi-epoch v2 inboxes with a single command and zero configuration.

It does not run [**public-inbox-init**(1)](/public-inbox-init/1.md) nor [**public-inbox-index**(1)](/public-inbox-index/1.md).  Those commands must be run separately if serving/searching the mirror is required.  As-is, public-inbox-clone is suitable for creating a git-only backup.

public-inbox-clone creates a Makefile with handy targets to update the inbox once indexed.  This Makefile may be edited by the user; it will not be rewritten by [**public-inbox-fetch**(1)](/public-inbox-fetch/1.md) unless it is removed completely.

public-inbox-clone does not use nor require any extra configuration files (not even `"~/.public-inbox/config"`).

[**public-inbox-fetch**(1)](/public-inbox-fetch/1.md) may be used to keep `"INBOX_DIR"` up-to-date.

For v2 inboxes, it will create a `"$INBOX_DIR/manifest.js.gz"` file to speed up subsequent [**public-inbox-fetch**(1)](/public-inbox-fetch/1.md).

## OPTIONS

- \--epoch=RANGE

  Restrict clones of [**public-inbox-v2-format**(5)](/public-inbox-v2-format/5.md) inboxes to the given range of epochs.  The range may be a single non-negative integer or a (possibly open-ended) `"LOW..HIGH"` range of non-negative integers.  `"~"` may be prefixed to either (or both) integer values to represent the offset from the maximum possible value.

  For example, `"--epoch=~0"` alone clones only the latest epoch, `"--epoch=~2.."` clones the three latest epochs.

  Default: `"0..~0"` or `0..` or `"..~0"` (all epochs, all three examples are equivalent)

- \-q

  - \--quiet

  Quiets down progress messages, also passed to [**git-fetch**(1)](/git-fetch/1.md).

- \-v

  - \--verbose

  Increases verbosity, also passed to [**git-fetch**(1)](/git-fetch/1.md).

- \--torsocks=auto\|no\|yes

  - \--no-torsocks

  Whether to wrap [**git**(1)](/git/1.md) and [**curl**(1)](/curl/1.md) commands with [**torsocks**(1)](/torsocks/1.md).

  Default: `"auto"`

## CONTACT

Feedback welcome via plain-text mail to \<mailto:meta@public-inbox.org\>

The mail archives are hosted at \<https://public-inbox.org/meta/\> and \<http://4uok3hntl7oi7b4uf4rtfwefqeexfzil2w6kgk2jn5z2f764irre7byd.onion/meta/\>

## COPYRIGHT

Copyright all contributors \<mailto:meta@public-inbox.org\>

License: AGPL-3.0+ \<https://www.gnu.org/licenses/agpl-3.0.txt\>

## SEE ALSO

[**public-inbox-fetch**(1)](/public-inbox-fetch/1.md), [**public-inbox-init**(1)](/public-inbox-init/1.md), [**public-inbox-index**(1)](/public-inbox-index/1.md)
