Hmbown/CodeWhale · error
Failed to run git diff. Is git installed? ({e})
Error message
Failed to run git diff. Is git installed? ({e}) What it means
Error "Failed to run git diff. Is git installed? ({e})" thrown in Hmbown/CodeWhale.
Source
Thrown at crates/tui/src/lib.rs:8275
}
fn collect_diff(args: &ReviewArgs) -> Result<String> {
let mut cmd = crate::dependencies::Git::command()
.ok_or_else(|| anyhow::anyhow!("git not found on PATH"))?;
cmd.arg("diff");
if args.staged {
cmd.arg("--cached");
}
if let Some(base) = &args.base {
cmd.arg(format!("{base}...HEAD"));
}
if let Some(path) = &args.path {
cmd.arg("--").arg(path);
}
let output = cmd
.output()
.map_err(|e| anyhow::anyhow!("Failed to run git diff. Is git installed? ({e})"))?;
if !output.status.success() {
let stderr = String::from_utf8_lossy(&output.stderr);
bail!("git diff failed: {}", stderr.trim());
}
let mut diff = String::from_utf8_lossy(&output.stdout).to_string();
if diff.len() > args.max_chars {
diff = crate::utils::truncate_with_ellipsis(&diff, args.max_chars, "\n...[truncated]\n");
}
Ok(diff)
}
fn review_target_label(args: &ReviewArgs) -> String {
let mut label = if args.staged {
"staged".to_string()
} else if let Some(base) = args
.base
.as_deref()
.map(str::trim)View on GitHub (pinned to 8880682c63)
When it happens
Trigger: Thrown at crates/tui/src/lib.rs:8275 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of Hmbown/CodeWhale@8880682c63 (2026-08-16).
Data as JSON: /api/errors/3c49a4231cababaa.
Report an issue: GitHub.