Documentation ¶
Index ¶
- type Commit
- type Diff
- type Option
- type ParseState
- type Parser
- func (c *Parser) FromReader(ctx context.Context, stdOut io.Reader, commitChan chan Commit, isStaged bool)
- func (c *Parser) RepoPath(ctx context.Context, source string, head string, abbreviatedLog bool, ...) (chan Commit, error)
- func (c *Parser) Staged(ctx context.Context, source string) (chan Commit, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Commit ¶
type Commit struct { Hash string Author string Date time.Time Message strings.Builder Diffs []Diff Size int // in bytes }
Commit contains commit header info and diffs.
type Diff ¶
type Diff struct { PathB string LineStart int IsBinary bool // contains filtered or unexported fields }
Diff contains the information about a file diff in a commit. It abstracts the underlying content representation, allowing for flexible handling of diff content. The use of contentWriter enables the management of diff data either in memory or on disk, based on its size, optimizing resource usage and performance.
func NewDiff ¶ added in v3.66.2
func NewDiff(opts ...diffOption) *Diff
NewDiff creates a new Diff with a threshold.
func (*Diff) ReadCloser ¶ added in v3.66.2
func (d *Diff) ReadCloser() (io.ReadCloser, error)
ReadCloser returns a ReadCloser for the contentWriter.
type Option ¶ added in v3.27.0
type Option func(*Parser)
Option is used for adding options to Config.
func UseCustomContentWriter ¶ added in v3.67.2
func UseCustomContentWriter() Option
UseCustomContentWriter sets useCustomContentWriter option.
func WithMaxCommitSize ¶ added in v3.27.0
WithMaxCommitSize sets maxCommitSize option. Commits larger than maxCommitSize will be put in the commit channel and additional diffs will be added to a new commit.
func WithMaxDiffSize ¶ added in v3.27.0
WithMaxDiffSize sets maxDiffSize option. Diffs larger than maxDiffSize will be truncated.
type ParseState ¶ added in v3.45.1
type ParseState int
const ( Initial ParseState = iota CommitLine MergeLine AuthorLine DateLine MessageStartLine MessageLine MessageEndLine DiffLine ModeLine IndexLine FromFileLine ToFileLine BinaryFileLine HunkLineNumberLine HunkContentLine ParseFailure )
func (ParseState) String ¶ added in v3.45.1
func (state ParseState) String() string
type Parser ¶ added in v3.27.0
type Parser struct {
// contains filtered or unexported fields
}
Parser sets values used in GitParse.
func NewParser ¶ added in v3.27.0
NewParser creates a GitParse config from options and sets defaults.