git

package
v0.5.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 21, 2025 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Diff

func Diff() ([]byte, error)

Diff executes `git diff` and returns the raw command output. Callers are responsible for parsing or rendering the returned bytes.

func GetBranches added in v0.5.0

func GetBranches() ([]string, error)

GetBranches returns a list of all available branches (local and remote).

func GetCurrentBranch added in v0.5.0

func GetCurrentBranch() (string, error)

GetCurrentBranch returns the name of the current branch. Returns empty string if in detached HEAD state.

func GetFileDiff

func GetFileDiff(filepath string, contextLines int, mode DiffMode, compareBranch string) ([]byte, error)

GetFileDiff returns the unified diff for a specific file. contextLines specifies how many context lines to show (0 for default, -1 for full file) mode specifies which changes to show (staged, unstaged, or all) compareBranch specifies the target branch for comparison (only used when mode is DiffBranch)

func ValidateBranch added in v0.5.0

func ValidateBranch(branch string) error

ValidateBranch checks if a branch exists.

Types

type DiffMode

type DiffMode int

DiffMode represents which changes to show

const (
	DiffAll      DiffMode = iota // Both staged and unstaged (default)
	DiffStaged                   // Only staged changes (--cached)
	DiffUnstaged                 // Only unstaged changes
	DiffBranch                   // Compare current branch to target branch
)

type FileStat

type FileStat struct {
	Path      string
	Status    FileStatus
	Additions int
	Deletions int
}

FileStat contains metadata about a changed file.

func GetModifiedFiles

func GetModifiedFiles(mode DiffMode, compareBranch string, includeUntracked bool) ([]FileStat, error)

GetModifiedFiles returns a list of all files with changes and their stats.

type FileStatus

type FileStatus int

FileStatus represents the status of a modified file.

const (
	StatusModified FileStatus = iota
	StatusAdded
	StatusDeleted
	StatusRenamed
	StatusUntracked
	StatusUnknown
)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL