git-bug
Manage distributed, offline bug tracking using Git
TLDR
Create a new identity
Create a new bug
Push a new bug entry to a remote
Pull for updates
List existing bugs
Filter and sort bugs using a query
Search for bugs by text content
SYNOPSIS
git bug [options] <command> [<args>]
PARAMETERS
-h, --help
Display help message and exit
--version
Print version information
--list-remotes
List configured bug remotes
--remote <remote>
Use specific remote for operations
--stdout
Output to stdout, bypassing pager
--debug
Enable debug logging
-C <path>
Run as if git-repo is in <path>
--git-dir=<path>
Use <path> for Git directory
DESCRIPTION
Git-bug is a fully distributed bug tracker that operates seamlessly within any Git repository. It stores bugs, issues, and discussions as native Git objects, allowing them to be pushed, pulled, and merged alongside code changes. This eliminates the need for centralized servers, enabling offline work and perfect reproducibility.
Bugs support rich features like multi-threaded conversations, labels, assignees, milestones, custom fields, and full-text search across human- and machine-readable identities (emails, key fingerprints). Conflicts in bug histories are automatically resolved during Git merges.
Usage is intuitive via subcommands: create with git bug add, list with git bug ls, view details with git bug show, and synchronize with git bug push or git bug pull. It integrates with Git remotes for sharing bugs across teams.
Ideal for distributed teams, open-source projects, or any Git workflow, git-bug ensures bug data is tamper-proof, versioned, and always in sync with the codebase.
CAVEATS
Requires repository initialization with git bug init; not all Git operations automatically handle bug data; experimental features may change.
INITIALIZATION
Run git bug init once per repository to set up bug tracking
COMMON SUBCOMMANDS
add: Create new bug; ls: List bugs; show: View bug; push/pull: Sync with remotes; rebase: Edit history
HISTORY
Created in 2019 by Michael Muré to address limitations of centralized trackers. Actively maintained on GitHub (MicheleC/git-bug), with releases following Semantic Versioning. Gained popularity for distributed workflows post-2020.
SEE ALSO
git(1), git-config(1), git-remote(1), git-push(1)


