···
return stdout.String(), &formatPatch[0], nil
-
func (g *GitRepo) MergeBase(commit1, commit2 *object.Commit) (*object.Commit, error) {
-
isAncestor, err := commit1.IsAncestor(commit2)
-
mergeBase, err := commit1.MergeBase(commit2)
-
if len(mergeBase) == 0 {
-
return nil, fmt.Errorf("failed to find a merge-base")
-
return mergeBase[0], nil
func (g *GitRepo) ResolveRevision(revStr string) (*object.Commit, error) {
rev, err := g.r.ResolveRevision(plumbing.Revision(revStr))
···
commits = append(commits, obj)
···
func (g *GitRepo) FormatPatch(base, commit2 *object.Commit) (string, []types.FormatPatch, error) {
-
// get list of commits between commir2 and base
commits, err := g.commitsBetween(commit2, base)
return "", nil, fmt.Errorf("failed to get commits: %w", err)
···
return stdout.String(), &formatPatch[0], nil
func (g *GitRepo) ResolveRevision(revStr string) (*object.Commit, error) {
rev, err := g.r.ResolveRevision(plumbing.Revision(revStr))
···
commits = append(commits, obj)
···
func (g *GitRepo) FormatPatch(base, commit2 *object.Commit) (string, []types.FormatPatch, error) {
+
// get list of commits between commit2 and base
commits, err := g.commitsBetween(commit2, base)
return "", nil, fmt.Errorf("failed to get commits: %w", err)