[go: up one dir, main page]

git-odb 0.1.0

Implements a git object database for loose objects and packs
Documentation
use std::path::PathBuf;

#[cfg(not(windows))]
fn fixup(v: Vec<u8>) -> Vec<u8> {
    v
}

#[cfg(windows)]
fn fixup(v: Vec<u8>) -> Vec<u8> {
    // Git checks out text files with line ending conversions, git itself will of course not put '\r\n' anywhere,
    // so that wouldn't be expected in an object and doesn't have to be parsed.
    use bstr::ByteSlice;
    v.replace(b"\r\n", "\n")
}

pub fn hex_to_id(hex: &str) -> git_object::Id {
    git_object::Id::from_hex(hex.as_bytes()).unwrap()
}

pub fn fixture_path(path: &str) -> PathBuf {
    PathBuf::from("tests").join("fixtures").join(path)
}

mod loose;
mod pack;