ejiektpobehuk/git-plumber
ejiektpobehuk/git-plumber has 37 GitHub stars and 0 forks. GitHot measured 0 in 7 days. Last checked 2026-11-11 07:09 UTC. Last push 2026-08-02.
Explore git internals, the plumbing
Measured star growth
- in 24h
- Update delayed
- in 7 days
- 0
- in 15 days
- Collecting history
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
Originalgit-plumber
[!IMPORTANT] Pre-release software. Expect bugs and incomplete features.
🎥 Click above to watch git-plumber in action (asciinema demo)
What is git-plumber?
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.
Demystify compressed and binary “plumbing” beneath git’s familiar porcelain appearance.
Perfect for learning, live experimentation, or just satisfying your curiosity.
Use cases
- Learning with “Pro Git” 10. Git Internals): Fire up
git-plumberin a test repository and see immediately how every command reshapes your repo’s internals. - Understanding git storage: See for yourself how git stores differences between versions — the reason this app was created!
What git-plumber is not?
- Not a replacement for everyday git workflow
- Not a “porcelain” UI like gitui or lazygit
- Not an interface for running plumbing commands, but a worthy alternative to
git cat-fileorgit verify-pack
Installation
Development version
Dev versions are built from the latest main commit.
They are available:
- Nix Flake:
nix run github:ejiektpobehuk/git-plumber - Container images
ejiek/git-plumber:devat Docker Hubghcr.io/ejiektpobehuk/git-plumber:dev
- Arch User Repository
- From source
Versioned releases
They are built from tags, are less frequent, and still not stable. However, they have better availability:
- crates.io/git-plumber
- Nix Flake:
nix run github:ejiektpobehuk/git-plumber/${VERSION} - Container images at
- Release Binaries
More packaging details are available in issue #1
Building from source
Prerequisites:
- Rust and Cargo installed
- Minimum Supported Rust Version
1.88
git clone https://github.com/ejiektpobehuk/git-plumber.git
cd git-plumber
cargo install --path .
Roadmap & Contributions
This 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: open an issue or start a discussion!
Read the project’s Guiding Principles and contribution tips in CONTRIBUTING.md.
Why the 'git-plumber' name?
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.
License
MIT
Credits & Inspiration
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! 🔧
Explore related projects
codecrafters-io/build-your-own-x
Master programming by recreating your favorite technologies from scratch.
561,686 starspublic-apis/public-apis
A collective list of free APIs
498,075 starsmorluto/rea
Reverse engineer anything with agents, from app behavior down to native binaries.
450,986 starsopenclaw/openclaw
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
394,312 stars