aboutsummaryrefslogtreecommitdiff
path: root/object/commit/commit.go
blob: 0f7649e1a9fef660af943e756432a18ec8e3c396 (about) (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// Package commit provides parsed commit objects and commit serialization.
//
// It parses commits into ordinary Go values for reading and construction. It
// does not preserve the exact original byte layout needed for signature
// verification; callers that need signature-verification payload fidelity
// should use [codeberg.org/lindenii/furgit/object/signed/commit].
package commit

import (
	objectid "codeberg.org/lindenii/furgit/object/id"
	objectsignature "codeberg.org/lindenii/furgit/object/signature"
)

// Commit represents a fully materialized Git commit object.
//
// Labels: MT-Unsafe.
type Commit struct {
	Tree         objectid.ObjectID
	Parents      []objectid.ObjectID
	Author       objectsignature.Signature
	Committer    objectsignature.Signature
	Message      []byte
	ChangeID     string
	ExtraHeaders []ExtraHeader
}