gitconductor
gitconductor is a command-line tool and Python library for managing git operations over nested GitLab groups using the official GitLab Python API. It traverses group and subgroup hierarchies, runs recursive git commands, and can work with Python packages inside a cloned hierarchy.
Full documentation: gitconductor.readthedocs.io.
Features
- Recursive group traversal across nested GitLab groups
- Git operations across many projects, such as clone, branch, checkout, add, commit, status, and push
- Hierarchy and access visualisation with Rich tables and trees
- Python package helpers for requirements, installation, and wheel building
- CLI and Python API entry points
Installation
pip install gitconductor
Configuration
Gitconductor needs a GitLab Personal Access Token. The quickest setup is:
export GITCONDUCTOR_GITLAB_API_KEY=<my-private-key>
Pass the full GitLab group or project URL to gitconductor clone. Gitconductor derives the GitLab instance from that URL.
Gitconductor can also store settings in a TOML file. By default, this is:
~/.config/gitconductor/gitconductor.toml
The location can be changed via GITCONDUCTOR_CONFIG or the top-level --cfg CLI option.
Quick Start
gitconductor clone https://gitlab.com/my-group
cd my-group
gitconductor status
gitconductor viz tree
Run commands from a subgroup or project directory to narrow the recursive scope.
Use gitconductor clone --resume <url> to reuse an existing matching hierarchy.
Documentation
See the full documentation for:
Development & Contributing
Contributions are welcome. See CONTRIBUTING.md.
License
MIT License. See LICENCE.md.
Metadata
Release files for gitconductor 0.7.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| gitconductor-0.7.0.tar.gz | 18.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| gitconductor-0.7.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 41.5 kB
Release files / gitconductor-0.7.0.tar.gz
| Download URL | gitconductor-0.7.0.tar.gz |
|---|---|
| Size | 18.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
eed4a16e5883d9d5054abf1a9447f9b7e44afd47ef21213b117c35c13b09cf70
|
|
BLAKE2b-256 checksum How to use checksums |
a98dc8f3cd94652cc0d3efb4ea428307e2078a0fbf2264f7cffb61fe8755a11e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.2.0 CPython/3.13.13
|
Release files / gitconductor-0.7.0-py3-none-any.whl
| Download URL | gitconductor-0.7.0-py3-none-any.whl |
|---|---|
| Size | 22.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
de43ebde219ca07cb9a33124861c500e7f2d022599c1f6e6d1b5112dbc760baf
|
|
BLAKE2b-256 checksum How to use checksums |
bea8d25dfcd741db25f38492f298e469d81c8c17c2a4fa47c54f5aac0d4c46d0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.2.0 CPython/3.13.13
|