LinuxCommandLibrary

git-bug

Manage distributed, offline bug tracking using Git

TLDR

Create a new identity

$ git bug user create
copy

Create a new bug
$ git bug add
copy

Push a new bug entry to a remote
$ git bug push
copy

Pull for updates
$ git bug pull
copy

List existing bugs
$ git bug ls
copy

Filter and sort bugs using a query
$ git bug ls "[status]:[open] [sort]:[edit]"
copy

Search for bugs by text content
$ git bug ls "[search_query]" baz
copy

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

Copied to clipboard