aboutsummaryrefslogtreecommitdiff
path: root/protocol/v0v1/server/advertised_ref.go
blob: a203eb7ad6bfa8e212216593ef151cbb9984e0da (about) (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package server

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

// AdvertisedRef is one ref entry in one v0/v1 server advertisement.
type AdvertisedRef struct {
	// Name is the advertised reference name. It may be HEAD or one full
	// reference name.
	Name string
	// ID is the object ID currently advertised for Name.
	ID objectid.ObjectID
	// Peeled is the peeled annotated-tag target when available.
	//
	// If set, advertisement writes one immediate "<name>^{}" line after the
	// main entry, matching Git's advertisement rules.
	Peeled *objectid.ObjectID
}

// Advertisement is one server-side ref advertisement.
type Advertisement struct {
	Refs []AdvertisedRef
}