https://github.com/egarcia74/gitall
Run a Git command across many sibling repositories with optional interactive selection, parallel execution, grouping/prefixing, and JSON summaries.
https://github.com/egarcia74/gitall
bash git
Last synced: about 2 months ago
JSON representation
Run a Git command across many sibling repositories with optional interactive selection, parallel execution, grouping/prefixing, and JSON summaries.
- Host: GitHub
- URL: https://github.com/egarcia74/gitall
- Owner: egarcia74
- License: other
- Created: 2025-08-22T02:19:08.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-08-22T05:35:48.000Z (10 months ago)
- Last Synced: 2025-08-22T07:08:57.141Z (10 months ago)
- Topics: bash, git
- Language: Shell
- Homepage:
- Size: 27.3 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
# gitall
[](https://github.com/egarcia74/gitall/actions/workflows/ci.yml)
Run a Git command across many sibling repositories with optional interactive selection, parallel execution, grouping/prefixing, and JSON summaries.
## Install
Option 1: source in your shell (functions + wrappers)
```bash
[ -f ./lib/gitall.sh ] && . ./lib/gitall.sh
```
Option 2: CLI via bin wrapper
```bash
# Add bin/ to your PATH, or symlink
ln -sf "$PWD/bin/gitall" /usr/local/bin/gitall
```
Direct run (dual-mode):
```bash
bash lib/gitall.sh --help
```
## Usage
```bash
# Example: fetch from all repos in parallel (long-form options)
gitall --all --parallel -- fetch --all --prune
# Example: show status only in repos with changes, with JSON summary
gitall --all --only-dirty --json-summary -- status -s
# Example: group output by repo for easier reading
gitall --all --group-output -- log --oneline -n 3
```
Wrappers: `gitall-status`, `gitall-fetch`, `gitall-pull`, `gitall-push`, `gitall-prune-local-branches`, `gitall-gc`, `gitall-sync`.
See [`docs/gitall.md`](docs/gitall.md) for full documentation (options, config file, JSON summary, examples).