I am cloneholio! I need syncing of my repos.
Project description
cloneholio
Maintain local backups of all Git repositories belonging to a user or group.
Features:
- Supports both GitHub and GitLab.
- Back up all repositories owned by users, groups, and subgroups.
- Back up individual repositories.
- Scale to a configurable number of processes.
Installation
Token Setup
GitHub
Create a personal access token (Tokens (classic))) with the following permissions:
repo:status
GitLab
Create a personal access token with the following permissions:
api(Access the authenticated user's API)
Example
This will back up all repositories owned by the python organization on GitHub.
$ cloneholio -t TOKEN -p github python
INFO Begin "github" processing using "/home/draje/Code/GitLab/nvllsvm/cloneholio"
INFO Processing python/asyncio
INFO Processing python/bpo-builder
...
INFO Processing python/typing
INFO Finished "github" processing 62 repos with 0 failures
Help
$ cloneholio -h
usage: cloneholio [-h] [-n NUM_PROCESSES] -t TOKEN [-p {github,gitlab}]
[--insecure] [-u BASE_URL] [-e EXCLUDE] [--exclude-archived]
[--exclude-forks] [-d DIRECTORY] [--remove-orphans]
[--depth DEPTH | --mirror] [--prune] [-q | -v | --progress]
[--list] [--version] [--all]
[paths ...]
Maintain local backups of all Git repositories belonging to a user or group.
Token creation:
- GitLab
Permissions: api
URL: https://gitlab.com/profile/personal_access_tokens
- GitHub
Permissions: repo:status
URL: https://github.com/settings/tokens/new
positional arguments:
paths
options:
-h, --help show this help message and exit
-n, --num-processes NUM_PROCESSES
Number of processes to use
--depth DEPTH Corresponds to the git clone --depth option
--mirror Maintain bare mirrors (git clone --mirror).
Captures all refs; no working tree.
--prune With --mirror, prune local refs deleted upstream.
Default keeps them.
-q, --quiet Suppress informational output
-v, --verbose Enable debug logs
--progress Show progress bar
--list List remote repositories then exit.
--version show program's version number and exit
--all Get all groups (GitLab) or organizations (GitHub)
remote configuration:
-t, --token TOKEN
-p, --provider {github,gitlab}
--insecure Ignore SSL errors
-u, --base-url BASE_URL
-e, --exclude EXCLUDE
Paths to exclude from backup
--exclude-archived exclude archived repositories
--exclude-forks exclude repositories that are forks
local configuration:
-d, --directory DIRECTORY
--remove-orphans Remove orphaned directories
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cloneholio-0.16.0.tar.gz.
File metadata
- Download URL: cloneholio-0.16.0.tar.gz
- Upload date:
- Size: 43.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e16942c887c424c8a7b89a2eb619dbae13b39376c107c42da531b9bf8613d763
|
|
| MD5 |
07590178e8da1f1fe85753f12f6becfa
|
|
| BLAKE2b-256 |
64ce6f11a2da3d9f133f5855a85bfa12a8e4b50230a64b509727318dcbf169e0
|
File details
Details for the file cloneholio-0.16.0-py3-none-any.whl.
File metadata
- Download URL: cloneholio-0.16.0-py3-none-any.whl
- Upload date:
- Size: 10.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
52e97e017bda07e308fc61d661560235668e1a8775acc277e147717127339e7e
|
|
| MD5 |
912f1ab909108ae487d3b43d584d1df0
|
|
| BLAKE2b-256 |
bbf955f78c54367c87cb6a647c5fe978729afa0ef0301d075915993902b4ccfa
|