git-walk
Read-only discovery of git repositories: walk a file tree and return the
checkouts it finds, ranked, each annotated with cheap git metadata, without ever
invoking the git binary.
"walk" here is not a revwalk. In git, a walk usually means traversing the commit graph (a revwalk).
git-walkwalks the filesystem to discover repositories, not history.
Status
Work in progress. The project skeleton is in place, but repository discovery is not implemented yet. The public API and the CLI output are expected to change before the first functional release.
What it will do
- Walk a directory tree and find git checkouts (working trees and bare repos).
- Annotate each repository with cheap, read-only metadata (current branch,
HEAD, clean/dirty heuristics) read directly from the.gitdirectory. - Rank the discovered repositories and stream them as NDJSON from the CLI.
Everything read-only: git-walk never shells out to git, and never writes to
the repositories it discovers.
Install
Not published as a functional release yet. Once it is:
cargo install git-walk
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE)
- MIT license (LICENSE-MIT)
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.