aboutsummaryrefslogtreecommitdiff
path: root/commitquery/queries_mergebase.go
blob: ff0aafb9105be636ce8be418820a792b20e60ad4 (about) (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
package commitquery

import objectid "codeberg.org/lindenii/furgit/object/id"

// MergeBases reports all merge bases in Git's merge-base --all order.
//
// Both inputs are peeled through annotated tags before commit traversal.
func (queries *Queries) MergeBases(left, right objectid.ObjectID) ([]objectid.ObjectID, error) {
	query := queries.acquire()
	defer queries.release(query)

	return query.MergeBases(left, right)
}

// MergeBase reports one merge base between left and right, if any.
func (queries *Queries) MergeBase(left, right objectid.ObjectID) (objectid.ObjectID, bool, error) {
	query := queries.acquire()
	defer queries.release(query)

	return query.MergeBase(left, right)
}