{"repo":"grafana/nanogit","free":true,"listed":false,"github":"https://github.com/grafana/nanogit","clone":"git clone https://github.com/grafana/nanogit.git","description":"Lightweight, HTTPS-only Git client library for Go, built for cloud-native and multitenant services","language":"Go","stars":48,"topics":["cloud-native","git","git-protocol","gitops","go","golang","grafana"],"license":"Apache-2.0","category":"deployment-docker-iac","readme_excerpt":"📚 Read the full documentation at grafana.github.io/nanogit What is nanogit? nanogit is a lightweight Git client library for Go, built for services that read from and write to Git repositories over HTTPS — with no local clone, no .git directory, and no git binary. It speaks the Git Smart HTTP Protocol v2 directly, so it works with GitHub, GitLab, Bitbucket, Gitea, and any other server that supports protocol v2. Grafana built nanogit to power Git Sync, which syncs dashboards with tenants' own Git repositories from inside Grafana's multitenant backend — a workload where cloning every repository to disk is not an option. Read the full story in Why nanogit exists. - Stateless — reads and writes Git objects directly over HTTPS; nothing is persisted locally, so there is no per-repository state to store, clean up, or keep consistent across replicas - Works with any protocol v2 server — one code path for GitHub, GitLab, Bitbucket, Gitea, and self-hosted servers; token-based auth, no SSH key management - Essential operations — refs, blobs, trees, commits, diffs, staged writes, and shallow clones with glob-based path filtering - Memory-efficient — streaming packfile processing and configurable memory/disk/auto writing modes for bulk operations - Fast — orders of magnitude faster and leaner than a full Git implementation for common server-side operations (benchmarks below) - Commit signing — sign commits with GPG, SSH, or S/MIME keys - Pluggable — object storage (caching) and retry poli","default_branch":null,"files":null,"tree":[],"storefront":"/r/grafana","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/grafana/nanogit/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}