squashrebasemerge

package
v0.0.21 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetOp

func GetOp() ops.RegisterableOp

GetOp exposes the operation to recipe registration.

Types

type Activity

type Activity struct{}

Activity implements the RegisterableOp interface for squash-rebase-merge.

func NewActivity

func NewActivity() *Activity

NewActivity constructs the squash-rebase-merge activity wrapper.

func (*Activity) GetMetadata

func (a *Activity) GetMetadata() ops.OpMetadata

GetMetadata describes the operation for discovery and documentation.

type SquashRangeSummary

type SquashRangeSummary struct {
	BaseHash    string `json:"base_hash"`
	PersistHash string `json:"persist_hash"`
}

SquashRangeSummary captures the original commit range that was squashed.

type SquashRebaseMergeInput

type SquashRebaseMergeInput struct {
	RepoPath       string `json:"repo_path,omitempty" default:"{{ context.environment.worktree_path }}" validate:"required,dir"`
	LocalHash      string `json:"local_hash,omitempty" validate:"omitempty,hexadecimal,min=7,max=40"`
	UpstreamRepo   string `json:"upstream_repo" default:"{{ context.git.repo }}" validate:"required"`
	UpstreamBranch string `json:"upstream_branch,omitempty" default:"{{ context.git.ref }}" validate:"required"`
	Rebase         *bool  `json:"rebase,omitempty"`
	Author         string `json:"author,omitempty" default:"{{ context.git.author }}"`
	CommitMessage  string `json:"commit_message,omitempty"`
}

SquashRebaseMergeInput defines the parameters for the squash-rebase-merge git op.

type SquashRebaseMergeOutput

type SquashRebaseMergeOutput struct {
	TargetBranch    string                 `json:"target_branch"`
	RemoteRef       string                 `json:"remote_ref"`
	MergedHash      string                 `json:"merged_hash"`
	SquashedCommits SquashRangeSummary     `json:"squashed_commits"`
	GitContextPatch map[string]interface{} `json:"git_context_patch,omitempty"`
	FastForward     bool                   `json:"fast_forward"`
}

SquashRebaseMergeOutput returns metadata about the merge operation.

func Run

Run executes the squash-rebase-merge flow.

Jump to

Keyboard shortcuts

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