Serviço completo de desenvolvimento de software, escrito em Go e hospedado por conta própria, com Git, revisão de código, issues, pacotes e CI/CD.
littledivy/durable-git
Servidor Git em que cada repositório é um Durable Object, executado no Cloudflare Workers ou hospedado por conta própria no celld.
Alternativa open source a:GitHub
- Estrelas
- 264
- Forks
- 13
- Issues abertas
- 0
- Último commit
- há 2 meses
O que é?
dgit é um servidor Git baseado no Cloudflare Durable Objects. Cada repositório é seu próprio objeto, com um banco de dados SQLite privado que armazena os objetos e refs e implementa o protocolo Git Smart HTTP, permitindo que um cliente Git padrão faça clone, fetch e push. Não há sistema de arquivos nem servidor de origem, e repositórios que ninguém acessa têm custo quase zero. As leituras são públicas, pushes exigem um token e um push para um novo nome cria o repositório.
O projeto implementa Git em TypeScript, incluindo o enquadramento pkt-line, a análise de packfiles com resolução de deltas, a geração de packs e um diff de Myers. Quando um bucket R2 está vinculado, os bytes dos packs são armazenados no R2, enquanto o índice permanece no SQLite; clones completos são armazenados em cache e transmitidos pelo Worker. Clones superficiais, fetches incrementais e atualizações forçadas são compatíveis.
A interface web integrada segue o layout do cgit, com visualizações de log, árvore e blobs com realce de sintaxe, blame, diffs, saída de format-patch, snapshots tar.gz e zip e feeds Atom. O pacote também pode ser usado como biblioteca para definir hooks personalizados de autorização e push.
Recursos principais
- 01Implementa o protocolo Git Smart HTTP para que clientes Git padrão funcionem sem alterações
- 02Armazena cada repositório em seu próprio Durable Object com SQLite
- 03Bucket R2 opcional para armazenar packs e manter clones completos em cache
- 04Dá suporte a clones superficiais, fetch incremental e thin packs
- 05Oferece uma interface web no estilo cgit com log, blame, diffs e snapshots
- 06Pode ser usado como biblioteca com hooks personalizados de autorização e push
Casos de uso
- Hospedar repositórios Git privados no Cloudflare Workers sem gerenciar um servidor
- Executar um servidor Git autohospedado no celld com armazenamento replicado
- Adicionar hospedagem Git com controle de acesso personalizado a um aplicativo existente
- Navegar pelo histórico de repositórios e baixar snapshots pela interface web
Início rápido
- 1
Instale as dependências
npm install - 2
Faça o deploy do Worker na Cloudflare
npx wrangler deploy - 3
Configure o segredo da senha de push
npx wrangler secret put GIT_TOKEN - 4
Adicione o host implantado como remoto e faça push
git remote add origin https://<your-host>/myrepo.git
Antes de usar
- Pull requests estão desativados; as contribuições devem ser enviadas por e-mail usando git format-patch.
- Clones muito grandes com o histórico completo podem exceder os limites de CPU do Cloudflare Workers; recomenda-se usar celld para os repositórios maiores.
- O deploy no Cloudflare Workers está sujeito a limites de memória e CPU por solicitação.
Tópicos
Perguntas frequentes
- O que é durable-git?
- Servidor Git em que cada repositório é um Durable Object, executado no Cloudflare Workers ou hospedado por conta própria no celld. dgit é um servidor Git baseado no Cloudflare Durable Objects. Cada repositório é seu próprio objeto, com um banco de dados SQLite privado que armazena os objetos e refs e implementa o protocolo Git Smart HTTP, permitindo que um cliente Git padrão faça clone, fetch e push. Não há sistema de arquivos nem servidor de origem, e repositórios que ninguém acessa têm custo quase zero. As leituras são públicas, pushes exigem um token e um push para um novo nome cria o repositório.
- durable-git é gratuito? Qual é a licença?
- durable-git é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- durable-git ainda é mantido?
- Atualizado nos últimos 6 meses. O último commit de durable-git foi em 21 de ago. de 2026.
- Para que posso usar durable-git?
- Hospedar repositórios Git privados no Cloudflare Workers sem gerenciar um servidor Executar um servidor Git autohospedado no celld com armazenamento replicado Adicionar hospedagem Git com controle de acesso personalizado a um aplicativo existente Navegar pelo histórico de repositórios e baixar snapshots pela interface web
- Como instalar durable-git?
- Instale as dependências: npm install Faça o deploy do Worker na Cloudflare: npx wrangler deploy Configure o segredo da senha de push: npx wrangler secret put GIT_TOKEN Adicione o host implantado como remoto e faça push: git remote add origin https://<your-host>/myrepo.git
- Onde consigo durable-git?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/littledivy/durable-git
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Um sistema de arquivos virtual dentro de um Cloudflare Durable Object que oferece aos agentes de IA um workspace com backends de execução configuráveis, baseados em contêineres ou Workers.
Plataforma self-hosted compatível com Cloudflare Workers, distribuída em um único binário Rust para executar Workers, KV, D1, R2 e muito mais em uma máquina.
Gerenciador de favoritos com Cloudflare Workers e D1 que salva links por bookmarklet ou extensão do Chrome, sem exigir conta.
Ferramenta open source completa de inteligência de fontes abertas que verifica sites sob demanda, incluindo DNS, SSL, headers, informações do servidor e configurações de segurança.
Plataforma open source de automação de workflows e alternativa ao Zapier, com integrações em TypeScript que também funcionam como servidores MCP para agentes de IA.