Skip to main content

ai_agent/utils/
git_settings.rs

1use std::process::Command;
2
3pub fn get_git_config(key: &str) -> Option<String> {
4    let output = Command::new("git")
5        .args(["config", "--get", key])
6        .output()
7        .ok()?;
8
9    if output.status.success() {
10        Some(String::from_utf8_lossy(&output.stdout).trim().to_string())
11    } else {
12        None
13    }
14}
15
16pub fn set_git_config(key: &str, value: &str) -> Result<(), String> {
17    let output = Command::new("git")
18        .args(["config", key, value])
19        .output()
20        .map_err(|e| e.to_string())?;
21
22    if output.status.success() {
23        Ok(())
24    } else {
25        Err(String::from_utf8_lossy(&output.stderr).to_string())
26    }
27}