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.Tag("0.1.0", &git.CreateTagOptions{
Tagger: commitOpts.Author,
Message: "Release 0.1.0",
}),
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
func Tag ¶
func Tag(tag string, options *git.CreateTagOptions) OperationFunc
Click to show internal directories.
Click to hide internal directories.