A CLI tool for managing multiple Git repositories collectively.
Project description
Overview
GitGulf is a command-line tool designed to help you manage and navigate through multiple Git repositories with ease. Whether you are dealing with only a handful or a full collection of repositories, GitGulf aims to streamline common Git operations like fetching, pulling, and switching branches across multiple repositories, making your development workflow more efficient and effective.
Gif showing ggs, ggf & ggp:
Features
- Status: View the current status of all repositories in a directory.
- Fetch: Perform a
git fetchon all repositories. - Pull: Perform a
git pullon all repositories. - Switch Branch: Swiftly switch between branches on all repositories.
- Prune: Prune all reachable objects from the object databases.
- Cleanup: Clean up and optimize your local repositories.
Installation
Install using pip
pip install gitgulf
Install from this repo
Clone the gitgulf repository and run pip install on it:.
git clone https://github.com/tychop/gitgulf.git
cd gitgulf
pip install .
Requirements
- A modern Python version (3.6+)
Usage:
gitgulf COMMAND
Choose from the following commands:
`-s, --status` : Show all repository statuses.
`-f, --fetch` : Fetch all repositories.
`-p, --pull` : Pull all repositories.
`-b, --branch` BRANCH : Switch all repositories to the specified BRANCH.
`-m, --main` : Switch all repositories to the 'main' branch.
`-d, --development` : Switch all repositories to the 'development' branch.
`-pr, --prune` : Prune objects no longer reachable from all repositories.
`-c, --cleanup` : Clean up and optimize local repositories.
Abbreviated Commands:
Instead of the gitgulf COMMAND syntax, use abbreviated commands for quicker operations:
`ggs` : Show all the repository statuses.
`ggf` : Fetch all repositories.
`ggp` : Pull all repositories.
`ggb BRANCH` : Switch all repositories to the specified BRANCH.
`ggm` : Switch all repositories to the 'main' branch.
`ggd` : Switch all repositories to the 'development' branch.
`ggpr` : Prune objects that are no longer reachable from all repositories.
`ggc` : Clean up and optimize the local repositories.
Contributing
We welcome contributions to GitGulf! Please see our Contributing Guide for more details.
License
GitGulf is MIT licensed.
Acknowledgements
Extend your thanks or acknowledge people or organizations that helped you in working on this project.
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 gitgulf-0.1.0.tar.gz.
File metadata
- Download URL: gitgulf-0.1.0.tar.gz
- Upload date:
- Size: 10.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.9.17
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7e855a77818effde5a73c3c61afd312a031b9f58f59229be268c74a41d153aa2
|
|
| MD5 |
384ebed962f51e324767b2756ef4d31e
|
|
| BLAKE2b-256 |
eabcec0c4cec18d244065a7089a638b7ec0755fb70f02fa2966b33695774200d
|
File details
Details for the file gitgulf-0.1.0-py3-none-any.whl.
File metadata
- Download URL: gitgulf-0.1.0-py3-none-any.whl
- Upload date:
- Size: 11.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.9.17
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
601a31fa2fe33b85c45c9e80f9dae0a359e420e015d755494c14c0c7ce69c772
|
|
| MD5 |
f0eec39ddcdc27c8f4bf96727a59ae3c
|
|
| BLAKE2b-256 |
5eabed193d60adac2533cdafe5dacb2703a6b650ea570c14b596e2efcbd7d5cf
|