repobuilder

package
v0.0.0-...-5029a70 Latest Latest
Warning

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

Go to latest
Published: May 13, 2024 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Examples

Constants

View Source
const DefaultBranchName = "main"

Variables

This section is empty.

Functions

func Build

func Build(ops ...OperationFunc) (*git.Repository, error)
Example
commitOpts := git.CommitOptions{
	AllowEmptyCommits: true,
	Author: &object.Signature{
		Name:  "Gopher",
		Email: "gopher@example.com",
	},
}

repo, err := repobuilder.Build(
	repobuilder.Commit("initial commit", commitOpts),
	repobuilder.CheckoutBranch("test"),
	repobuilder.Commit("test: something", commitOpts),
	repobuilder.Commit("fix: foo is bar", commitOpts),
	repobuilder.Commit("feat: add bar", commitOpts),
)
if err != nil {
	// Do not panic!
	panic(err)
}

var iter object.CommitIter
iter, err = repo.Log(&git.LogOptions{
	Order: git.LogOrderBSF,
})
if err != nil {
	// Do not panic!
	panic(err)
}
defer iter.Close()

err = iter.ForEach(func(commit *object.Commit) error {
	fmt.Println(commit.Message)
	return nil
})
if err != nil {
	// Do not panic!
	panic(err)
}
Output:

feat: add bar
fix: foo is bar
test: something
initial commit

Types

type OperationFunc

type OperationFunc func(repo *git.Repository, tree *git.Worktree) error

func CheckoutBranch

func CheckoutBranch(name string) OperationFunc

func Commit

func Commit(message string, options git.CommitOptions) OperationFunc

Jump to

Keyboard shortcuts

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