# Gimme
A multi-repo manager for developers who work across many projects. Jump between repositories, pin your favorites, clean up stale branches, and set up aliases — all from one CLI.
## Installation
### From crates.io
```bash
cargo install gimmetool
```
### First-time setup
After installing, run the setup wizard to configure your shell integration and search folders:
```bash
gimme setup
```
This will:
- Install a shell function (bash/zsh) so `gimme` can `cd` into repositories
- Walk you through choosing which folders to scan for git repos
- Write your config to `~/.config/gimme/config.yaml`
## Usage
### Jumping between repos
```bash
gimme myproject # Jump to the best match
gimme to myproject # Same thing, explicit subcommand
```
Gimme scans your configured search folders, finds matching repositories, and `cd`s you into the best match. Pinned repos get priority.
### Listing repositories
```bash
gimme list # Show all discovered repos, grouped by search folder
gimme ls frontend # Filter by name
```
### Branch operations
```bash
gimme list -b # List branches in the current repo
gimme list -b --merged # Show only merged branches
gimme clean -b # Delete merged branches
gimme clean -b --all # Delete all non-protected, non-pinned branches
gimme clean -b --dry-run # Preview what would be deleted
```
### Pinning
Pin repositories to give them priority in search results, or pin branches to protect them from cleanup:
```bash
gimme pin # Pin the current repo
gimme pin -b feature # Pin a branch in the current repo
gimme unpin # Unpin the current repo
```
### Aliases
Create shortcuts for repos you jump to often:
```bash
gimme config add alias k kernelle
gimme k # Jumps to kernelle
```
### Configuration
```bash
gimme config ls # Show all config
gimme config add group ~/work # Add a search folder
gimme config add protected develop # Protect a branch globally
gimme config delete group ~/old # Remove a search folder
```
## Config file
Gimme stores its configuration at `$XDG_CONFIG_HOME/gimme/config.yaml` (defaults to `~/.config/gimme/config.yaml`). It also supports the legacy path `~/.gimme.config.yaml` for backward compatibility.
## License
Licensed under either of [Apache License, Version 2.0](LICENSE-APACHE) or [MIT License](LICENSE-MIT) at your option.