git

package
v0.0.2 Latest Latest
Warning

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

Go to latest
Published: Jun 8, 2021 License: Apache-2.0 Imports: 8 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CLIGit

type CLIGit struct {
	CLIGitConfig
	Runner runner.Runner
}

CLIGit is a new command line based Git.

func NewCLIGit

func NewCLIGit(cfg CLIGitConfig, r runner.Runner) *CLIGit

NewCLIGit creates a new command line based Git.

func (*CLIGit) Add

func (g *CLIGit) Add() error

Add will add any changes to the generated file.

func (*CLIGit) Commit

func (g *CLIGit) Commit() error

Commit all changes.

func (*CLIGit) CreateBranch

func (g *CLIGit) CreateBranch() error

CreateBranch creates a branch if it differs from the base.

func (*CLIGit) CreateRepository

func (g *CLIGit) CreateRepository() error

CreateRepository bootstraps a plain repository at a given location.

func (*CLIGit) HasChanges

func (g *CLIGit) HasChanges() (bool, error)

HasChanges returns whether a location has uncommitted changes or not.

func (*CLIGit) IsRepository

func (g *CLIGit) IsRepository() error

IsRepository returns whether a location is a git repository or not.

func (*CLIGit) Push

func (g *CLIGit) Push() error

Push will push to a remote.

type CLIGitConfig

type CLIGitConfig struct {
	Directory string
	Branch    string
	Remote    string
	Base      string
}

CLIGitConfig defines configuration options for CLIGit.

type Client

type Client struct {
	SCMConfig
}

Client defines a client which uses a real implementation to create pull requests.

func NewClient

func NewClient(cfg SCMConfig) (*Client, error)

NewClient returns a real client.

func (*Client) CreatePullRequest

func (r *Client) CreatePullRequest() error

CreatePullRequest will create a pull request.

type Git

type Git interface {
	// Add staged changes.
	Add() error
	// Commit changes.
	Commit() error
	// CreateBranch create a branch if it's needed.
	CreateBranch() error
	// CreateRepository bootstraps a plain repository at a given location.
	CreateRepository() error
	// IsRepository returns whether a location is a git repository or not.
	IsRepository() error
	// HasChanges returns whether a location has uncommitted changes or not.
	HasChanges() (bool, error)
	// Push will push to a remote.
	Push() error
}

Git defines high level abilities for Git related operations.

type SCMClient

type SCMClient interface {
	CreatePullRequest() error
}

SCMClient defines the ability to create a pull request on a remote repository.

type SCMConfig

type SCMConfig struct {
	Branch string
	Base   string
	Repo   string
	Client *scm.Client
}

SCMConfig defines configuration for the SCM Client that is needed to create a pull request.

Directories

Path Synopsis
Code generated by counterfeiter.
Code generated by counterfeiter.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL
JackTT - Gopher 🇻🇳