Documentation ¶
Index ¶
- Constants
- type Branch
- func (b *Branch) Description() string
- func (b *Branch) FullRefName() string
- func (b *Branch) HasCommitsToPull() bool
- func (b *Branch) HasCommitsToPush() bool
- func (b *Branch) ID() string
- func (b *Branch) IsRealBranch() bool
- func (b *Branch) IsTrackingRemote() bool
- func (b *Branch) MatchesUpstream() bool
- func (b *Branch) ParentRefName() string
- func (b *Branch) RefName() string
- func (b *Branch) RemoteBranchNotStoredLocally() bool
- func (b *Branch) RemoteBranchStoredLocally() bool
- type Commit
- func (c *Commit) Description() string
- func (c *Commit) FullRefName() string
- func (c *Commit) ID() string
- func (c *Commit) IsFirstCommit() bool
- func (c *Commit) IsMerge() bool
- func (c *Commit) IsTODO() bool
- func (c *Commit) ParentRefName() string
- func (c *Commit) RefName() string
- func (c *Commit) ShortSha() string
- type CommitFile
- type File
- func (f *File) Description() string
- func (f *File) GetHasStagedChanges() bool
- func (f *File) GetHasUnstagedChanges() bool
- func (f *File) GetIsTracked() bool
- func (f *File) GetPath() string
- func (f *File) GetPreviousPath() string
- func (f *File) ID() string
- func (f *File) IsRename() bool
- func (f *File) IsSubmodule(configs []*SubmoduleConfig) bool
- func (f *File) Matches(f2 *File) bool
- func (f *File) Names() []string
- func (f *File) SubmoduleConfig(configs []*SubmoduleConfig) *SubmoduleConfig
- type IFile
- type Remote
- type RemoteBranch
- type StashEntry
- type SubmoduleConfig
- type Tag
Constants ¶
const EmptyTreeCommitHash = "4b825dc642cb6eb9a060e54bf8d69288fbee4904"
Special commit hash for empty tree object
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Branch ¶
type Branch struct { Name string // the displayname is something like '(HEAD detached at 123asdf)', whereas in that case the name would be '123asdf' DisplayName string Recency string Pushables string Pullables string UpstreamGone bool Head bool // if we have a named remote locally this will be the name of that remote e.g. // 'origin' or 'tiwood'. If we don't have the remote locally it'll look like // 'git@github.com:tiwood/lazygit.git' UpstreamRemote string UpstreamBranch string }
Branch : A git branch duplicating this for now
func (*Branch) Description ¶
func (*Branch) FullRefName ¶ added in v0.35.0
func (*Branch) HasCommitsToPull ¶ added in v0.30.1
func (*Branch) HasCommitsToPush ¶ added in v0.30.1
func (*Branch) IsRealBranch ¶ added in v0.30.1
for when we're in a detached head state
func (*Branch) IsTrackingRemote ¶ added in v0.30.1
func (*Branch) MatchesUpstream ¶ added in v0.30.1
func (*Branch) ParentRefName ¶ added in v0.35.0
func (*Branch) RemoteBranchNotStoredLocally ¶ added in v0.35.0
func (*Branch) RemoteBranchStoredLocally ¶ added in v0.32.2
we know that the remote branch is not stored locally based on our pushable/pullable count being question marks.
type Commit ¶
type Commit struct { Sha string Name string Status string // one of "unpushed", "pushed", "merged", "rebasing" or "selected" Action string // one of "", "pick", "edit", "squash", "reword", "drop", "fixup" Tags []string ExtraInfo string // something like 'HEAD -> master, tag: v0.15.2' AuthorName string // something like 'Jesse Duffield' AuthorEmail string // something like 'jessedduffield@gmail.com' UnixTimestamp int64 // SHAs of parent commits (will be multiple if it's a merge commit) Parents []string }
Commit : A git commit
func (*Commit) Description ¶
func (*Commit) FullRefName ¶ added in v0.35.0
func (*Commit) IsFirstCommit ¶ added in v0.35.0
func (*Commit) IsTODO ¶ added in v0.35.0
returns true if this commit is not actually in the git log but instead is from a TODO file for an interactive rebase.
func (*Commit) ParentRefName ¶ added in v0.35.0
type CommitFile ¶
type CommitFile struct { // TODO: rename this to Path Name string ChangeStatus string // e.g. 'A' for added or 'M' for modified. This is based on the result from git diff --name-status }
CommitFile : A git commit file
func (*CommitFile) Description ¶
func (f *CommitFile) Description() string
func (*CommitFile) ID ¶
func (f *CommitFile) ID() string
type File ¶
type File struct { Name string PreviousName string HasStagedChanges bool HasUnstagedChanges bool Tracked bool Added bool Deleted bool HasMergeConflicts bool HasInlineMergeConflicts bool DisplayString string Type string // one of 'file', 'directory', and 'other' ShortStatus string // e.g. 'AD', ' A', 'M ', '??' }
File : A file from git status duplicating this for now
func (*File) Description ¶
func (*File) GetHasStagedChanges ¶ added in v0.27.1
func (*File) GetHasUnstagedChanges ¶ added in v0.27.1
func (*File) GetIsTracked ¶ added in v0.27.1
func (*File) GetPreviousPath ¶ added in v0.35.0
func (*File) IsSubmodule ¶
func (f *File) IsSubmodule(configs []*SubmoduleConfig) bool
func (*File) Matches ¶
returns true if the file names are the same or if a a file rename includes the filename of the other
func (*File) Names ¶
Names returns an array containing just the filename, or in the case of a rename, the after filename and the before filename
func (*File) SubmoduleConfig ¶
func (f *File) SubmoduleConfig(configs []*SubmoduleConfig) *SubmoduleConfig
type IFile ¶ added in v0.27.1
type IFile interface { GetHasUnstagedChanges() bool GetHasStagedChanges() bool GetIsTracked() bool GetPath() string GetPreviousPath() string }
sometimes we need to deal with either a node (which contains a file) or an actual file
type Remote ¶
type Remote struct { Name string Urls []string Branches []*RemoteBranch }
Remote : A git remote
func (*Remote) Description ¶
type RemoteBranch ¶
Remote Branch : A git remote branch
func (*RemoteBranch) Description ¶
func (r *RemoteBranch) Description() string
func (*RemoteBranch) FullName ¶
func (r *RemoteBranch) FullName() string
func (*RemoteBranch) FullRefName ¶ added in v0.35.0
func (r *RemoteBranch) FullRefName() string
func (*RemoteBranch) ID ¶
func (r *RemoteBranch) ID() string
func (*RemoteBranch) ParentRefName ¶ added in v0.35.0
func (r *RemoteBranch) ParentRefName() string
func (*RemoteBranch) RefName ¶
func (r *RemoteBranch) RefName() string
type StashEntry ¶
StashEntry : A git stash entry
func (*StashEntry) Description ¶
func (s *StashEntry) Description() string
func (*StashEntry) FullRefName ¶ added in v0.35.0
func (s *StashEntry) FullRefName() string
func (*StashEntry) ID ¶
func (s *StashEntry) ID() string
func (*StashEntry) ParentRefName ¶ added in v0.35.0
func (s *StashEntry) ParentRefName() string
func (*StashEntry) RefName ¶
func (s *StashEntry) RefName() string
type SubmoduleConfig ¶
func (*SubmoduleConfig) Description ¶
func (r *SubmoduleConfig) Description() string
func (*SubmoduleConfig) ID ¶
func (r *SubmoduleConfig) ID() string
func (*SubmoduleConfig) RefName ¶
func (r *SubmoduleConfig) RefName() string
type Tag ¶
type Tag struct {
Name string
}
Tag : A git tag