Replace RETURN_IF_EXCEPTION with explicit cleanup that frees the
git_revwalk before returning when toWTFString throws an exception.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Fix memory leaks when JS exceptions occur during array construction
in getStatus, listFiles, and diff functions. Add comprehensive tests
for empty repositories, invalid arguments, and error messages.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add read-only Git operations: getStatus, revParse, getCurrentBranch,
aheadBehind, listFiles, diff, countCommits, and log. Includes Status
and DeltaType constants for nodegit compatibility.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Adds a new built-in module for Git operations using libgit2 (v1.9.0) statically linked.
Initial implementation includes Repository.open(), head(), and Commit properties (id, message, summary, author, committer, time).
Designed for local-only operations with lazy initialization to avoid overhead for users who don't need Git functionality.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>