use super::ObjectId; use serde::{Deserialize, Serialize}; #[derive(Debug, Clone, Serialize, Deserialize)] pub struct CommitObject { pub id: ObjectId, pub tree: ObjectId, pub parent: Option, pub timestamp: u64, pub message: String, pub author: String, } impl CommitObject { pub fn serialize(&self) -> Vec { bincode::serialize(self).expect("commit serialization should not fail") } pub fn deserialize(data: &[u8]) -> Result { bincode::deserialize(data) } }