tokmd-git
Streaming git log adapter for tokmd analysis.
Overview
This is a Tier 2 crate for git history collection. It provides a streaming interface to collect commit information without loading entire history into memory.
Installation
[]
= "1.3"
Usage
use ;
use Path;
// Check git availability
if git_available
Key Functions
Detection
History Collection
Implementation Details
- Uses
git log --name-only --pretty=format:%ct|%ae - Parses output line by line (streaming)
- Respects
max_commitsandmax_commit_fileslimits - Returns error if git command fails
- Returns empty vec if not a git repository
Why Shell Out?
This crate uses the git CLI rather than libgit2 for simplicity and to avoid native dependency complexity. The streaming approach keeps memory usage low for large repositories.
License
MIT OR Apache-2.0