Git remote helper for rclone-supported services
Project description
Git remote helper for rclone-supported services
This is a Git remote helper for backends supported by rclone. In other words, this helper makes it possible to push and pull to a large number of storage services with no native Git support.
Usage
Visit the rclone website and follow the instructions for
installation of rclone
, and configuration of access to the desired
service(s). Install this package via pip (pip install git-remote-rclone
), or
place the git-remote-rclone
executable provided here into the system path,
such that Git can find it. Now it is possible to use URLs like
rclone://<remote>/<path-on-remote>
as push and pull URLs for Git.
For example, if access to a DropBox account has been configured as an rclone-remote
named mydropbox
, the URL rclone://mydropbox/myrepository
identifies a remote
in a directory myrepository/
under this DropBox account.
Technical details
At the remote end, git-remote-rclone
maintains a directory with two files:
refs
: a small text file listing the refs provided by the remoterepo-<SHA>.tar.gz
: an archive of a bare Git repository
When interacting with a remote, git-remote-rclone
obtains and extracts a copy
of the remote repository archive (placed at .git/rclone/<remote-name>
in the
local Git repository). All Git operations are performed locally. Whenever the
state of the mirror repository has changed, it is compacted to minimize transfer
size and uploaded to the remote storage service. Likewise, the remote storage
service is checked for updates before the local mirror repository is updated.
git-remote-rclone
aims to minimize API usage of remote storage services. Per
invocation, it only queries for the state of a remote repository archive
(checksum), downloads two files (if needed), and uploads two files (if needed,
and on push only).
Tested with
rclone
1.63.1- Google Drive
- Onedrive
- DropBox
Acknowledgements
This work is based on datalad/git-remote-rclone. This work changes the design for compatibility with rclone backends like crypt that do not support file hashes.
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
File details
Details for the file git_remote_rclone_reds-0.2.tar.gz
.
File metadata
- Download URL: git_remote_rclone_reds-0.2.tar.gz
- Upload date:
- Size: 8.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 77d708dc422af015517492ae08fb0d7162deaf88814afe07f25d4ca39408f068 |
|
MD5 | 3214e9b69586e6a913eb955897ca02cd |
|
BLAKE2b-256 | 95697b5db265ab09f77ab5e79194bbea159049f72c04b6445d36e130fb46bdac |
File details
Details for the file git_remote_rclone_reds-0.2-py3-none-any.whl
.
File metadata
- Download URL: git_remote_rclone_reds-0.2-py3-none-any.whl
- Upload date:
- Size: 8.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 86d0a8926ec80491812f47ed76ef3daffd0571d7b09be9a4785aec74ed9a8e26 |
|
MD5 | 06eaefc06650cef1d384b8cb48d36e41 |
|
BLAKE2b-256 | 3618f8b5eceefc6efb859a8985650ac389deefac538533e0032e41a501c2e2a4 |