From 4b8d39764f9b54ea3090d0fea92a23025dbea30d Mon Sep 17 00:00:00 2001 From: Runxi Yu Date: Sat, 7 Mar 2026 14:24:05 +0800 Subject: protocol: Add v0v1 server protocol and its receivepack subprotocol --- protocol/v0v1/server/helpers.go | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 protocol/v0v1/server/helpers.go (limited to 'protocol/v0v1/server/helpers.go') diff --git a/protocol/v0v1/server/helpers.go b/protocol/v0v1/server/helpers.go new file mode 100644 index 00000000..9a62f714 --- /dev/null +++ b/protocol/v0v1/server/helpers.go @@ -0,0 +1,29 @@ +package server + +import ( + "slices" +) + +func sortAdvertisedRefs(refs []AdvertisedRef) []AdvertisedRef { + out := append([]AdvertisedRef(nil), refs...) + slices.SortFunc(out, func(left, right AdvertisedRef) int { + if left.Name == "HEAD" && right.Name != "HEAD" { + return -1 + } + + if left.Name != "HEAD" && right.Name == "HEAD" { + return 1 + } + + switch { + case left.Name < right.Name: + return -1 + case left.Name > right.Name: + return 1 + default: + return 0 + } + }) + + return out +} -- cgit v1.3.1-10-gc9f91