Documentation ¶
Overview ¶
Package execute provides infrastructure to run Git Town that is shared between all Git Town commands.
Index ¶
- func EnsureKnownBranchAncestry(branch domain.LocalBranchName, args EnsureKnownBranchAncestryArgs) (domain.BranchTypes, config.Lineage, error)
- func EnsureKnownBranchesAncestry(args EnsureKnownBranchesAncestryArgs) (domain.BranchTypes, config.Lineage, error)
- func LoadBranches(args LoadBranchesArgs) (domain.Branches, domain.BranchesSnapshot, domain.StashSnapshot, bool, error)
- type EnsureKnownBranchAncestryArgs
- type EnsureKnownBranchesAncestryArgs
- type LoadBranchesArgs
- type OpenRepoArgs
- type OpenRepoResult
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func EnsureKnownBranchAncestry ¶
func EnsureKnownBranchAncestry(branch domain.LocalBranchName, args EnsureKnownBranchAncestryArgs) (domain.BranchTypes, config.Lineage, error)
EnsureKnownBranchAncestry makes sure the lineage for the given branch is known. If needed, it queries the user for missing information. It returns the updated version of all information that is derived from the lineage.
The purpose of this function is to implement proper cache invalidation. It ensures that all information derived from lineage gets updated when the lineage is updated.
func EnsureKnownBranchesAncestry ¶
func EnsureKnownBranchesAncestry(args EnsureKnownBranchesAncestryArgs) (domain.BranchTypes, config.Lineage, error)
EnsureKnownBranchesAncestry makes sure the entire repo lineage is known. If needed, it queries the user for missing information. It returns the updated version of all information that is derived from the lineage.
The purpose of this function is to implement proper cache invalidation. It ensures that all information derived from lineage gets updated when the lineage is updated.
func LoadBranches ¶
func LoadBranches(args LoadBranchesArgs) (domain.Branches, domain.BranchesSnapshot, domain.StashSnapshot, bool, error)
LoadBranches loads the typically used information about Git branches using a single Git command.
Types ¶
type EnsureKnownBranchAncestryArgs ¶
type EnsureKnownBranchAncestryArgs struct { AllBranches domain.BranchInfos BranchTypes domain.BranchTypes DefaultBranch domain.LocalBranchName Lineage config.Lineage MainBranch domain.LocalBranchName Runner *git.ProdRunner }
type EnsureKnownBranchesAncestryArgs ¶
type EnsureKnownBranchesAncestryArgs struct { AllBranches domain.BranchInfos BranchTypes domain.BranchTypes Lineage config.Lineage MainBranch domain.LocalBranchName Runner *git.ProdRunner }
type LoadBranchesArgs ¶
type OpenRepoArgs ¶
type OpenRepoResult ¶
type OpenRepoResult struct { Runner git.ProdRunner RootDir domain.RepoRootDir IsOffline bool ConfigSnapshot undo.ConfigSnapshot }
func OpenRepo ¶
func OpenRepo(args OpenRepoArgs) (*OpenRepoResult, error)