easy-mirrors


Nameeasy-mirrors JSON
Version 0.3.1 PyPI version JSON
download
home_pageNone
SummarySimplest way to backup and restore git repositories
upload_time2025-07-12 18:18:50
maintainerNone
docs_urlNone
authorVladislav Punko
requires_python<4.0,>=3.10
licenseMIT
keywords automation git
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # easy-mirrors

![hooks](https://github.com/vladpunko/easy-mirrors/actions/workflows/hooks.yml/badge.svg)
![tests](https://github.com/vladpunko/easy-mirrors/actions/workflows/tests.yml/badge.svg)

Simplest way to back up and restore git repositories.

## Installation

Ensure that [git](https://git-scm.com) is installed on your system.

Use the package manager [pip](https://pip.pypa.io/en/stable) to install `easy-mirrors` along with its command-line interface by running:

```bash
python3 -m pip install --user easy-mirrors
```

## Basic usage

This program enables you to mirror your git repositories to a backup destination.

> **Warning:**
> Ensure that git is correctly configured and that you have access to the repositories you intend to mirror before starting.
> This guarantees a smooth backup process and safeguards your valuable data.

Create a configuration file named `easy_mirrors.ini` in your home directory containing the following content:

```ini
[easy_mirrors]
path = /tmp/repositories
repositories =
  https://github.com/vladpunko/easy-mirrors.git
```

Use the following commands to mirror and restore your repository:

```bash
# Step -- 1.
easy-mirrors --period 30  # make mirrors every 30 minutes

# Step -- 2.
cd /tmp/repositories/easy-mirrors.git

# Step -- 3.
git push --mirror https://github.com/vladpunko/easy-mirrors.git
```

## Contributing

Pull requests are welcome.
Please open an issue first to discuss what should be changed.

Please make sure to update tests as appropriate.

```bash
# Step -- 1.
python3 -m venv .venv && source ./.venv/bin/activate && pip install pre-commit tox

# Step -- 2.
pre-commit install --config .githooks.yml

# Step -- 3.
tox && tox -e lint
```

## License

[MIT](https://choosealicense.com/licenses/mit)


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "easy-mirrors",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.10",
    "maintainer_email": null,
    "keywords": "automation, git",
    "author": "Vladislav Punko",
    "author_email": "iam.vlad.punko@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/22/a4/5c8e477cf60b159308fa1c866dba6949e33deffca7d2faedf95b1692a18c/easy_mirrors-0.3.1.tar.gz",
    "platform": null,
    "description": "# easy-mirrors\n\n![hooks](https://github.com/vladpunko/easy-mirrors/actions/workflows/hooks.yml/badge.svg)\n![tests](https://github.com/vladpunko/easy-mirrors/actions/workflows/tests.yml/badge.svg)\n\nSimplest way to back up and restore git repositories.\n\n## Installation\n\nEnsure that [git](https://git-scm.com) is installed on your system.\n\nUse the package manager [pip](https://pip.pypa.io/en/stable) to install `easy-mirrors` along with its command-line interface by running:\n\n```bash\npython3 -m pip install --user easy-mirrors\n```\n\n## Basic usage\n\nThis program enables you to mirror your git repositories to a backup destination.\n\n> **Warning:**\n> Ensure that git is correctly configured and that you have access to the repositories you intend to mirror before starting.\n> This guarantees a smooth backup process and safeguards your valuable data.\n\nCreate a configuration file named `easy_mirrors.ini` in your home directory containing the following content:\n\n```ini\n[easy_mirrors]\npath = /tmp/repositories\nrepositories =\n  https://github.com/vladpunko/easy-mirrors.git\n```\n\nUse the following commands to mirror and restore your repository:\n\n```bash\n# Step -- 1.\neasy-mirrors --period 30  # make mirrors every 30 minutes\n\n# Step -- 2.\ncd /tmp/repositories/easy-mirrors.git\n\n# Step -- 3.\ngit push --mirror https://github.com/vladpunko/easy-mirrors.git\n```\n\n## Contributing\n\nPull requests are welcome.\nPlease open an issue first to discuss what should be changed.\n\nPlease make sure to update tests as appropriate.\n\n```bash\n# Step -- 1.\npython3 -m venv .venv && source ./.venv/bin/activate && pip install pre-commit tox\n\n# Step -- 2.\npre-commit install --config .githooks.yml\n\n# Step -- 3.\ntox && tox -e lint\n```\n\n## License\n\n[MIT](https://choosealicense.com/licenses/mit)\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Simplest way to backup and restore git repositories",
    "version": "0.3.1",
    "project_urls": {
        "Issue tracker": "https://github.com/vladpunko/easy-mirrors/issues",
        "Source code": "https://github.com/vladpunko/easy-mirrors"
    },
    "split_keywords": [
        "automation",
        " git"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "4fcf9cdcce5e073171d826a80ed4dcb7cabfd3fc513cb430aa7754a311f8c5c9",
                "md5": "f8bc70ffedcdce6c5d4203778c63c179",
                "sha256": "66c68b9f378e51ad849d1ad1831daa552aa581a227c7663fb63dda7d8980bbbb"
            },
            "downloads": -1,
            "filename": "easy_mirrors-0.3.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "f8bc70ffedcdce6c5d4203778c63c179",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.10",
            "size": 12697,
            "upload_time": "2025-07-12T18:18:48",
            "upload_time_iso_8601": "2025-07-12T18:18:48.457808Z",
            "url": "https://files.pythonhosted.org/packages/4f/cf/9cdcce5e073171d826a80ed4dcb7cabfd3fc513cb430aa7754a311f8c5c9/easy_mirrors-0.3.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "22a45c8e477cf60b159308fa1c866dba6949e33deffca7d2faedf95b1692a18c",
                "md5": "546f9ae6f44de86c44978421e6d1bcfd",
                "sha256": "8a0235793085734875bf8deb4b94c5f029bce3607c21100d24911999e46c94dc"
            },
            "downloads": -1,
            "filename": "easy_mirrors-0.3.1.tar.gz",
            "has_sig": false,
            "md5_digest": "546f9ae6f44de86c44978421e6d1bcfd",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.10",
            "size": 9922,
            "upload_time": "2025-07-12T18:18:50",
            "upload_time_iso_8601": "2025-07-12T18:18:50.153995Z",
            "url": "https://files.pythonhosted.org/packages/22/a4/5c8e477cf60b159308fa1c866dba6949e33deffca7d2faedf95b1692a18c/easy_mirrors-0.3.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-12 18:18:50",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "vladpunko",
    "github_project": "easy-mirrors",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "tox": true,
    "lcname": "easy-mirrors"
}
        
Elapsed time: 1.79892s