Git-bug guarda o rastreamento de bugs dentro do próprio repositório Git
Ferramenta open source armazena issues como objetos Git, sincroniza via push/pull normal e funciona sem conexão com nenhum serviço externo.

O git-bug resolve um problema específico: o rastreador de bugs do seu projeto depende de um serviço centralizado (GitHub Issues, Jira, GitLab) que exige conexão constante e trava seus dados num formato proprietário. A ferramenta, escrita em Go↳Go23 conteúdosEntendendo o Green Tea GC do Go 1.26Dev (Back & Front) · mai 2026Função recursiva em Go para acessar valores em mapas aninhadosDev (Back & Front) · set 2025Publicando projeto desenvolvido em Golang em um server grátisDev (Back & Front) · mar 2025Ver tudo em Dev (Back & Front) → e distribuída sob GPLv3, embute o bug tracker inteiro dentro do repositório Git, usando os mesmos mecanismos de objetos e DAG que já versionam seu código. Hoje soma 10,1 mil estrelas e 323 forks no GitHub, com 2.691 commits acumulados no histórico do projeto.
Como o armazenamento funciona
Diferente de plugins que salvam issues em arquivos .md dentro do repo (poluindo o histórico de código), o git-bug guarda cada bug, comentário e edição como objetos Git nativos, à parte das branches de código. Isso significa duas coisas na prática: nenhum arquivo extra aparece na sua árvore de trabalho, e o tracker viaja junto com qualquer clone, fork ou mirror do repositório sem configuração adicional. Segundo o projeto, listar ou abrir bugs é uma operação na casa dos milissegundos, porque não há round-trip de rede envolvido a menos que você peça explicitamente.
O formato em disco é especificado formalmente no que o projeto chama de "git-bug spec", cobrindo o modelo de entidades DAG, identidades de usuário e a estrutura do bug em si. É documentação pensada para quem quiser escrever uma implementação alternativa ou uma ferramenta que leia os dados do git-bug diretamente, sem passar pelo binário oficial.
O fluxo nativo, na linha de comando
O uso básico segue o vocabulário que qualquer dev já conhece do Git. Criar uma identidade:
git bug user createAbrir um bug (o editor configurado no seu Git abre para título e descrição):
git bug addSincronizar com um remote, exatamente como faria com git push/git pull:
git bug push [<remote>]
git bug pull [<remote>]Listar e filtrar usando uma sintaxe de query própria:
git bug ls "status:open sort:edit"Buscar por conteúdo de texto:
git bug ls "foo bar" bazA partir daí, comandos como show, comment, open e close cobrem o ciclo de vida normal de uma issue. Para quem prefere não decorar flags, há uma interface de terminal interativa (git bug termui) e uma Web UI local (git bug webui), servida por um binário Go que também expõe uma API GraphQL e faz papel de navegador de código, com árvore de arquivos, syntax highlight, histórico de commits e diffs.
Sincronização sem servidor central
O ponto que separa o git-bug de um simples arquivo de notas versionado é o modelo distribuído: cada bug é um objeto que pode ser criado, editado e mesclado por múltiplas pessoas em cópias locais diferentes, com resolução de conflitos herdada do próprio Git. Isso remove a dependência de estar online para abrir, comentar ou fechar um bug, cenário que o próprio README descreve literalmente como "num avião ou debaixo d'água". Para equipes distribuídas trabalhando em regiões com conectividade instável, ou em ambientes air-gapped por política de segurança, isso elimina a necessidade de manter réplicas ou caches de um serviço de terceiros só para continuar registrando problemas.
O outro efeito colateral é o backup automático: como os dados de bug trafegam pelos mesmos remotes Git que já hospedam o código, qualquer clone completo do repositório já é uma cópia íntegra do histórico de issues. Se o serviço de hospedagem sair do ar ou mudar de política amanhã, os dados já estão em todo lugar onde o código está clonado, sem migração.
Pontes para GitHub, GitLab, Jira e Launchpad
Para times que não vão abandonar o GitHub Issues ou o Jira da noite para o dia, o git-bug oferece bridges de importação e exportação. Configuração interativa:
git bug bridge newOu explícita, apontando para um projeto no GitHub:
git bug bridge new --name=<bridge> --target=github \
--url=https://github.com/git-bug/git-bug \
--login=<login> --token=<token>Com a ponte configurada, git bug bridge pull traz issues do serviço externo para dentro do repositório local, e git bug bridge push manda de volta as edições feitas offline. O projeto mantém uma "feature matrix" documentando o que cada bridge suporta hoje, já que GitHub, GitLab, Jira e Launchpad têm modelos de dados diferentes e nem todo recurso (labels, assignees, milestones) mapeia 1:1 entre eles. Vale checar essa matriz antes de adotar um bridge específico em produção, porque a paridade de features varia por serviço.
O que ainda não está pronto
O próprio README classifica a Web UI como "work in progress" para o cenário de portal público, ou seja, aceitar issues e comentários de usuários externos autenticados via OAuth sem que eles precisem clonar o repositório e instalar o binário. Hoje a Web UI roda bem como interface local para quem já tem o repo clonado, mas ainda não substitui um portal aberto ao público como o GitHub Issues faz nativamente. Isso é relevante para quem pensa em usar o git-bug como tracker de um projeto open source com muitos contribuidores externos: o fluxo nativo pede que cada pessoa tenha o repositório e o binário instalados, o que é natural para quem já contribui com código, mas é fricção extra para quem só quer reportar um bug.
Quando faz sentido considerar
O caso de uso mais direto é o time que já trabalha majoritariamente pela CLI e quer eliminar mais uma dependência de serviço externo, ou o projeto que precisa funcionar em ambientes desconectados por padrão (desenvolvimento embarcado, sistemas em campo, contextos com política de air-gap). Para equipes que dependem de integrações ricas de PM (dashboards, automações, SLA) o Jira ou o GitHub Issues seguem cobrindo mais terreno; o git-bug compensa isso com os bridges, mas a sincronização bidirecional exige manutenção e não é transparente como usar a plataforma nativa direto.
O projeto aceita contribuições e mantém uma sala no Matrix para discussão técnica, além dos issues e discussions do próprio repositório no GitHub, onde a lista de features planejadas (incluindo o portal público da Web UI) está aberta para quem quiser puxar uma dessas frentes.
Fonte: Hacker News
Este artigo foi escrito por Redação iMasters. Conteúdo produzido por agente de IA da redação iMasters, sob revisão editorial humana. Saiba como produzimos no expediente.
Vulnerabilidade no Telegram Desktop permitia roubar qualquer arquivo e sequestrar contas com um clique
Falha de injeção via IPC no cliente desktop do Telegram, catalogada como CVE-2026-107181, permitia ler qualquer arquivo do disco da vítima e assumir sua conta. A correção saiu em setembro, mas passou despercebida.













