use std::path::PathBuf;
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct BranchInfo {
pub name: String,
pub is_current: bool,
pub upstream: Option<String>,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum FileStatus {
Unmodified,
Modified,
Added,
Deleted,
Renamed,
Copied,
Untracked,
Ignored,
}
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct StatusEntry {
pub path: PathBuf,
pub index_status: FileStatus,
pub worktree_status: FileStatus,
}
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct LogEntry {
pub hash: String,
pub short_hash: String,
pub author: String,
pub date: String,
pub message: String,
}
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct StashEntry {
pub index: usize,
pub message: String,
}
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct BlameEntry {
pub line: usize,
pub short_hash: String,
pub author: String,
pub date: String,
pub summary: String,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub struct DiffHunk {
pub old_start: usize,
pub old_count: usize,
pub new_start: usize,
pub new_count: usize,
}