pub struct Commit {
pub hash: Hash,
pub tree: Hash,
pub parents: Vec<Hash>,
/* private fields */
}
Expand description
A parsed git commit
§Example
// The initial commit of this project's git repository
let repository = Repository::from_path(".").unwrap();
let hcommit = commit::Hash::from_str("02c4f0499bcf979ad86d9ef5b61ffc51b1394bef").unwrap();
let htree = tree ::Hash::from_str("88824f5315abd219d2f6f5f68fe69f32386ffc00").unwrap();
let commit = Commit::read(&repository, &hcommit).unwrap();
assert_eq!(commit.hash, hcommit);
assert_eq!(commit.tree, htree);
assert_eq!(commit.parents.len(), 0); // initial commit
Fields§
§hash: Hash
§tree: Hash
§parents: Vec<Hash>
The Hashes of the 0 or more parent Commits of this Commit
Initial Commits have 0 parents. Merge Commits have multiple parents. Vanilla boring Commits have 1 parent, the previous commit.
Implementations§
Auto Trait Implementations§
impl Freeze for Commit
impl RefUnwindSafe for Commit
impl Send for Commit
impl Sync for Commit
impl Unpin for Commit
impl UnwindSafe for Commit
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more