Explore git internals. Watch how other git clients modify a local repository.
2.0K
🎥 Click above to watch git-plumber in action (asciinema demo)
git-plumber is a CLI and TUI application for exploring the internals of git repositories in a safe, read-only way.
Browse and understand the contents of the .git/ directory: refs, trees, blobs and more.
Demystifying compressed and binary “plumbing” beneath git’s familiar porcelain appearance.
Perfect for learning, live experimentation, or just satisfying your curiosity.
git-plumber in a test repository and see immediately how every command reshapes your repo’s internals.git cat-file or git verify-packgit-plumber is available as a minimal Docker image optimized for size and security. Nothig but the binary. You have to pass a git repository as a volume.
scratch (empty base image)docker run --rm -v $(pwd):/workspace git-plumber:latest
docker run --rm -v /path/to/repo:/workspace git-plumber:latest
git-plumber:latest - Latest versioned releasegit-plumber:v0.1.2 - Specific versiongit-plumber:dev - Built from the latest main commitghcr.io/ejiektpobehuk/git-plumber:* - GitHub Container Registry mirrorThis app is my git learning project. It's going to be more complete as my knowledge grows.
For planned features checkout issues at GitHub.
Major goals:
PRs/issues welcome — no need to be a git guru! Beginners and documentation helpers are especially appreciated. If something is unclear, that’s a sign the app can get better: lease open an issue or start a discussion!
Read the project’s Guiding Principles and contribution tips in CONTRIBUTING.md.
In Git terms, “porcelain” is the friendly VCS user-facing interface, while “plumbing” is the low-level machinery underneath — the content‑addressed filesystem with packfiles, deltas and much more. It's described in more details in Pro Git, Chapter 10.1 Git Internals - Plumbing and Porcelain.
git-plumber helps you to explore the plumbing part.
MIT
Not a git management tool. Not for your day-to-day workflow. This is for those who want to see git’s wiring and learn how it all fits together.
🕳️ Happy plumbing! 🔧
Content type
Image
Digest
sha256:23d4fbe0d…
Size
1.2 MB
Last updated
about 1 year ago
docker pull ejiek/git-plumber