Skip to main content

kaish_tools_git/
lib.rs

1//! kaish's git tool bundle.
2//!
3//! This crate keeps libgit2 (a C dependency) out of `kaish-kernel`. It holds
4//! both halves of kaish's git support:
5//!
6//! - [`GitVfs`] — a [`Filesystem`](kaish_vfs::Filesystem) backend over a git
7//!   working tree (wraps a `LocalFs`).
8//! - [`Git`] — the `git` builtin ([`Tool`](kaish_tool_api::Tool)), written
9//!   entirely against the portable `ToolCtx` surface.
10//!
11//! The kernel registers [`Git`] behind its `git` feature; embedders that want
12//! direct `GitVfs` access get it through the kernel's re-exports.
13
14mod git_tool;
15mod git_vfs;
16
17pub use git_tool::Git;
18pub use git_vfs::{FileStatus, GitVfs, LogEntry, StatusSummary, WorktreeInfo};