Advertise capabilities with no refs in upload service.
With reference hiding, it is possible for a repository to appear empty when all refs are hidden. This causes capabilities to not be advertised either, since they are published with the first reference, breaking fetch by SHA1 support. Always advertise the capabilites by publishing the symbolic capabilities reference when the repository has no references to advertise (similar to the receive service). Change-Id: I8060e430ee03571dc51239e702864c85e888505c
This commit is contained in:
parent
15adcefb73
commit
ae1f46989c
|
@ -810,6 +810,8 @@ public void sendAdvertisedRefs(final RefAdvertiser adv) throws IOException,
|
|||
adv.advertiseCapability(OPTION_ALLOW_TIP_SHA1_IN_WANT);
|
||||
adv.setDerefTags(true);
|
||||
advertised = adv.send(getAdvertisedOrDefaultRefs());
|
||||
if (adv.isEmpty())
|
||||
adv.advertiseId(ObjectId.zeroId(), "capabilities^{}"); //$NON-NLS-1$
|
||||
adv.end();
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue