true_git

package
v1.1.0-alpha.7 Latest Latest
Warning

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

Go to latest
Published: Feb 6, 2020 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MinGitVersionConstraintValue               = "1.9"
	MinGitVersionWithSubmodulesConstraintValue = "2.14"
)

Variables

View Source
var (
	ForbiddenGitVersionsConstraintValues = []string{"2.22.0"}
)

Functions

func GetRealRepoDir

func GetRealRepoDir(repoDir string) (string, error)

func Init

func Init(opts Options) error

func IsAncestor added in v1.1.0

func IsAncestor(ancestorCommit, descendantCommit string, gitDir string) (bool, error)

func WithWorkTree

func WithWorkTree(gitDir, workTreeCacheDir string, commit string, opts WithWorkTreeOptions, f func(workTreeDir string) error) error

Types

type ArchiveDescriptor

type ArchiveDescriptor struct {
	Type    ArchiveType
	IsEmpty bool
}

func Archive

func Archive(out io.Writer, gitDir, workTreeCacheDir string, opts ArchiveOptions) (*ArchiveDescriptor, error)

func ArchiveWithSubmodules

func ArchiveWithSubmodules(out io.Writer, gitDir, workTreeCacheDir string, opts ArchiveOptions) (*ArchiveDescriptor, error)

type ArchiveOptions

type ArchiveOptions struct {
	Commit     string
	PathFilter PathFilter
}

type ArchiveType

type ArchiveType string
const (
	FileArchive      ArchiveType = "file"
	DirectoryArchive ArchiveType = "directory"
)

type FsckOptions

type FsckOptions struct {
	Unreachable bool
	NoReflogs   bool
	Strict      bool
	Full        bool
}

type FsckResult

type FsckResult struct {
	UnreachableCommits []string
}

func Fsck

func Fsck(repoDir string, opts FsckOptions) (FsckResult, error)

Fsck gives 'git fsck' output result

type Options

type Options struct {
	Out, Err io.Writer
}

type PatchDescriptor

type PatchDescriptor struct {
	Paths       []string
	BinaryPaths []string
}

func Patch

func Patch(out io.Writer, gitDir string, opts PatchOptions) (*PatchDescriptor, error)

func PatchWithSubmodules

func PatchWithSubmodules(out io.Writer, gitDir, workTreeCacheDir string, opts PatchOptions) (*PatchDescriptor, error)

type PatchOptions

type PatchOptions struct {
	FromCommit, ToCommit string
	PathFilter           PathFilter

	WithEntireFileContext bool
	WithBinary            bool
}

type PathFilter

type PathFilter struct {
	// BasePath can be path to the directory or a single file
	BasePath                   string
	IncludePaths, ExcludePaths []string
}

func (*PathFilter) IsFilePathValid

func (f *PathFilter) IsFilePathValid(filePath string) bool

func (*PathFilter) String

func (f *PathFilter) String() string

func (*PathFilter) TrimFileBasePath

func (f *PathFilter) TrimFileBasePath(filePath string) string

type WithWorkTreeOptions

type WithWorkTreeOptions struct {
	HasSubmodules bool
}

Jump to

Keyboard shortcuts

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