git

package
v3.0.0 Latest Latest
Warning

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

Go to latest
Published: Dec 5, 2022 License: GPL-2.0 Imports: 11 Imported by: 0

Documentation

Overview

Package git provides functionality to interact with a Git repository.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CommandIsInstalled

func CommandIsInstalled() bool

CommandIsInstalled returns true if an executable called "git" is found in the directories listed in the PATH environment variable.

func CommitID

func CommitID(dir string) (string, error)

CommitID return the commit id of HEAD by running git rev-parse in the passed directory

func IsGitDir

func IsGitDir(dir string) (bool, error)

IsGitDir checks if the passed directory is in a git repository. It returns true if: - .git/ exists or - the "git" command is in $PATH and "git rev-parse --git-dir" returns exit code 0 It returns false if:

  • .git/ does not exist and the "git" command is not in $PATH or "git rev-parse --git-dir" exits with code 128

func UntrackedFiles

func UntrackedFiles(dir string) ([]string, error)

UntrackedFiles returns a list of untracked files in the repository found at dir. The returned paths are relative to dir.

func WorktreeIsDirty

func WorktreeIsDirty(dir string) (bool, error)

WorktreeIsDirty returns true if the repository contains modified files, untracked files are considered, files in .gitignore are ignored

Types

type Repository

type Repository struct {
	// contains filtered or unexported fields
}

Repository reads information from a Git repository.

func NewRepository

func NewRepository(dir string) *Repository

NewRepository creates a new Repository that interacts with the repository at dir. dir must be directory in a Git worktree. This means it must have a .git/ directory or one of the parent directories must contain a .git/ directory.

func (*Repository) CommitID

func (g *Repository) CommitID() (string, error)

CommitID calls git.CommitID() for the repository. After the first successful call the commit ID is stored and the stored value is returned on successive calls.

func (*Repository) WithoutUntracked

func (g *Repository) WithoutUntracked(paths ...string) ([]string, error)

func (*Repository) WorktreeIsDirty

func (g *Repository) WorktreeIsDirty() (bool, error)

WorktreeIsDirty calls git.WorktreeIsDirty. After the first successful call the result is stored and the stored value is returned on successive calls.

Jump to

Keyboard shortcuts

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