Skip to main content

submodule_kit/commands/
list.rs

1use crate::submodule::parse_gitmodules;
2
3pub fn run() -> Result<(), String> {
4    let submodules = parse_gitmodules()?;
5    let col_width = submodules.iter().map(|s| s.path.len()).max().unwrap_or(0);
6    for sub in &submodules {
7        match &sub.branch {
8            Some(branch) => println!("{:<col_width$}  {}  (branch: {branch})", sub.path, sub.url),
9            None => println!("{:<col_width$}  {}", sub.path, sub.url),
10        }
11    }
12    Ok(())
13}
14
15#[cfg(test)]
16#[path = "list_tests.rs"]
17mod tests;