# Python Multigit
A Python version of the [multigit Bash script](https://github.com/jmnavarrol/simplest-git-subrepos).
While the multigit Bash script at [simplest-git-subrepos](https://github.com/jmnavarrol/simplest-git-subrepos) was created for illustration purposes, this one is intended to be a full-fledged implementation.
The general idea is to offer a simple way of managing “workspaces” integrating multiple git repos starting from a top one, and without the need of difficult “arcanes” like git submodules, git-subtree, etc.: you only need to declare your intended layout in a YAML file, and let this script do its job. See the [simplest-git-subrepos README](https://github.com/jmnavarrol/simplest-git-subrepos) for a long-wired explanation.
## usage multigit expects a YAML file named subrepos on the root directory of the current repo (see [example](./subrepos)).
- For each defined subrepo, it will clone/checkout it to the defined relative path. Optionally, it will checkout the given gitref, provided the repo’s local sandbox is “clean” (i.e. no pending modifications).
NOTE: pay attention to the fact that if the gitref you record is a specific commit, the related sandbox will be in disconnected state.
multigit will also recursively look for new subrepos files on the repositories it manages.
You should make sure your [.gitignore file](./.gitignore) ignores all your subrepos.
This way you just need to manage your repos with git in the standard way, just as if they were individually checked out in isolation.
## development For development purposes, you should create a Python 3 virtualenv using [the companion requirements file](./requirements.txt), i.e. (I’m using [virtualenvwrapper](https://virtualenvwrapper.readthedocs.io) here): mkvirtualenv –python=$(which python3) -r requirements.txt python-multigit.
Then, you can run this code by means of [the helper cmd script](./python-multigit-cmd.py), i.e.: ./python-multigit-cmd.py.
### License Python Multigit is made available under the terms of the GPLv3.
See the [license file](./LICENSE) that accompanies this distribution for the full text of the license.
Metadata
Release files for multigit 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| multigit-0.1.2.tar.gz | 15.8 kB | Without provenance | Details for multigit-0.1.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| multigit-0.1.2-py3-none-any.whl | Python 3 | none | any | Details for multigit-0.1.2-py3-none-any.whl |
Total release size: 32.6 kB
Release files / multigit-0.1.2.tar.gz
| Download URL | multigit-0.1.2.tar.gz |
|---|---|
| Size | 15.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1fe288e3713cb830b718dc21a654e26099311448afd62358efb3054aa7c8b324
|
|
BLAKE2b-256 checksum How to use checksums |
6f1f66b94af02a8baeaa349974ae528068567fded08b61fd8ec9aa0d6d8cf9ce
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.7.3
|
Release files / multigit-0.1.2-py3-none-any.whl
| Download URL | multigit-0.1.2-py3-none-any.whl |
|---|---|
| Size | 16.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
20c548631526d80e9b6837d922a49e10b0f9cf938344ff7e79bd3217fda982a7
|
|
BLAKE2b-256 checksum How to use checksums |
b08af6369d0b343c24f979b27964b97f944969f2245607afd887ddb25761753f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.7.3
|
Security for multigit 0.1.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.