gitctx

package
v1.37.4 Latest Latest
Warning

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

Go to latest
Published: Apr 17, 2026 License: AGPL-3.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CommitterInfo

type CommitterInfo struct {
	Name  string `json:"name"`
	Email string `json:"email"`
	Count int    `json:"count"`
}

CommitterInfo describes a committer with their commit count.

type GitContext

type GitContext struct {
	RemoteURLs          []string        `json:"remoteUrls"`
	CurrentBranch       string          `json:"currentBranch"`
	CurrentCommit       string          `json:"currentCommit"`
	HeadCommitMessage   string          `json:"headCommitMessage,omitempty"`
	HeadCommitAuthor    string          `json:"headCommitAuthor,omitempty"`
	HeadCommitEmail     string          `json:"headCommitEmail,omitempty"`
	HeadCommitTimestamp string          `json:"headCommitTimestamp,omitempty"`
	HeadTags            []string        `json:"headTags,omitempty"`
	RecentCommitters    []CommitterInfo `json:"recentCommitters"`
	RepoRootPath        string          `json:"repoRootPath"`
	IsDirty             bool            `json:"isDirty"`
	// IsWorktree is true when the repository is opened via a git linked worktree
	// (i.e. the .git entry in the directory root is a file pointer, not the main .git directory).
	IsWorktree bool `json:"isWorktree"`
}

GitContext holds repository metadata collected via go-git.

func Collect

func Collect(scanPath string) *GitContext

Collect gathers git context from the repository containing scanPath. Returns nil if scanPath is not inside a git repository.

type SystemInfo added in v1.21.0

type SystemInfo struct {
	Hostname string `json:"hostname,omitempty"`
	// Shell is the value of $SHELL (Linux/macOS) or %ComSpec% (Windows).
	Shell    string `json:"shell,omitempty"`
	OS       string `json:"os,omitempty"`
	Arch     string `json:"arch,omitempty"`
	Username string `json:"username,omitempty"`
}

SystemInfo captures host and process-environment context at scan time.

func CollectSystemInfo added in v1.21.0

func CollectSystemInfo() *SystemInfo

CollectSystemInfo gathers host and environment metadata. It never returns nil; individual fields may be empty when they cannot be read.

Jump to

Keyboard shortcuts

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