MCPcopy Create free account
hub / github.com/atomicdotdev/atomic / get_file_content

Function get_file_content

atomic-cli/src/commands/git/parallel.rs:4001–4021  ·  view source on GitHub ↗

Get file content from a git tree.

(git_repo: &GitRepository, tree: &Tree, path: &str)

Source from the content-addressed store, hash-verified

3999
4000/// Get file content from a git tree.
4001fn get_file_content(git_repo: &GitRepository, tree: &Tree, path: &str) -> CliResult<Vec<u8>> {
4002 let entry = tree
4003 .get_path(Path::new(path))
4004 .map_err(|e| CliError::GitError {
4005 message: format!("Path not found in tree: {}", e),
4006 })?;
4007
4008 if entry.kind() != Some(ObjectType::Blob) {
4009 return Err(CliError::GitError {
4010 message: "Not a file".to_string(),
4011 });
4012 }
4013
4014 let blob = git_repo
4015 .find_blob(entry.id())
4016 .map_err(|e| CliError::GitError {
4017 message: format!("Failed to find blob: {}", e),
4018 })?;
4019
4020 Ok(blob.content().to_vec())
4021}
4022
4023/// Parse a git commit message into subject and description.
4024fn parse_commit_message(message: &str) -> (String, Option<String>) {

Callers 2

parse_diff_filesFunction · 0.85

Calls 4

get_pathMethod · 0.45
kindMethod · 0.45
idMethod · 0.45
contentMethod · 0.45

Tested by

no test coverage detected