| Crates.io | git-dash |
| lib.rs | git-dash |
| version | 0.2.0 |
| created_at | 2026-01-09 20:55:50.549871+00 |
| updated_at | 2026-01-10 00:33:01.27681+00 |
| description | A fast TUI dashboard for discovering and managing multiple Git repositories |
| homepage | |
| repository | https://github.com/jvm/git-dash |
| max_upload_size | |
| id | 2032831 |
| size | 165,019 |
A fast TUI dashboard for discovering and managing multiple Git repositories from a single interface.
# Add the tap
brew tap jvm/tap
# Install (or in one command)
brew install jvm/tap/git-dash
cargo install --path .
cargo install git-dash
Using Just (recommended):
# Install just
brew install just # macOS
# or
cargo install just
# Common commands
just run # Run from current directory
just debug # Run with debug logging
just test # Run all tests
just check # Run all quality checks
just build # Build release binary
just install # Install locally
Using Cargo directly:
# Run from current directory
cargo run
# Run with debug logging
cargo run -- --debug
# Scan a specific directory
cargo run -- ~/repos
# Release build for better performance
cargo build --release
./target/release/git-dash
git-dash [OPTIONS] [PATH]
ARGS:
path Optional directory to scan (defaults to current directory)
OPTIONS:
-d, --debug Enable debug logging to git-dash-debug.log
-h, --help Print help information
The main view shows a table with the following columns:
j / k or ↓ / ↑: Move selection up/downPageDown / PageUp: Jump 10 repositories at a timep: Pull selected repository (prompts for confirmation)u: Push selected repository (prompts for confirmation)r: Refresh status for all repositoriesy: Confirm actionn or Esc: Cancel actionq: Quit applicationCtrl+C: Force quit.git folders or filesEnable debug logging to troubleshoot issues or understand performance:
cargo run -- --debug ~/repos
Debug logs include:
Logs are written to git-dash-debug.log in the current directory.
Run the test suite:
cargo test
The project includes:
src/status.rs (parsing, formatting, URL simplification)tests/repo_discovery.rs (discovery, nested repos, gitdir files)rust-toolchain.toml)Before committing, run:
just check # Format, lint, test, and build
Or individually:
cargo fmt # Format code
cargo clippy --all-targets --all-features # Lint
cargo test # Run tests
cargo build --release # Build
See RELEASE.md for the full release checklist and workflow.
cargo-deny - Check for security vulnerabilities and license issues:
cargo install cargo-deny
cargo deny check # or: just deny
cargo-watch - Auto-rebuild on file changes:
cargo install cargo-watch
cargo watch -x test # or: just watch-test
See CONTRIBUTING.md for development guidelines.
Licensed under the MIT License.
Copyright (c) 2025 Jose Mocito