2024-05-18 11:41:18 +01:00
|
|
|
use super::GitRef;
|
2024-05-11 19:46:20 +01:00
|
|
|
|
|
|
|
#[derive(Debug)]
|
|
|
|
pub enum Force {
|
|
|
|
No,
|
|
|
|
From(GitRef),
|
|
|
|
}
|
|
|
|
impl std::fmt::Display for Force {
|
|
|
|
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
|
|
|
|
match self {
|
2024-05-19 09:44:59 +01:00
|
|
|
Self::No => write!(f, "fast-forward"),
|
2024-05-11 19:46:20 +01:00
|
|
|
Self::From(from) => write!(f, "force-if-from:{}", from),
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2024-04-16 22:21:55 +01:00
|
|
|
|
2024-06-03 08:04:48 +01:00
|
|
|
#[derive(Debug, thiserror::Error)]
|
2024-05-14 16:28:17 +01:00
|
|
|
pub enum Error {
|
2024-06-03 08:04:48 +01:00
|
|
|
#[error("gix open: {0}")]
|
|
|
|
Open(#[from] Box<gix::open::Error>),
|
|
|
|
|
|
|
|
#[error("io: {0}")]
|
|
|
|
Push(#[from] std::io::Error),
|
|
|
|
|
|
|
|
#[error("lock")]
|
2024-05-18 11:41:18 +01:00
|
|
|
Lock,
|
2024-05-11 19:46:20 +01:00
|
|
|
}
|
|
|
|
|
2024-05-26 16:51:51 +01:00
|
|
|
pub type Result<T> = core::result::Result<T, Error>;
|