Re: Alternates advertisement on GitHub
- From
Derrick Stolee <stolee@gmail.com>
- Date
- Jul 26, 2019, 13:18 UTC
- Message-ID
- <19a0d5a9-864e-584d-d869-f15b5959beba@gmail.com>
- In-Reply-To
- <20190726031840.GB23056@TaylorsMBP9145.attlocal.net>
On 7/25/2019 11:18 PM, Taylor Blau wrote:
Show 9 quoted lines
> Hi everybody, > > Pushes to forks of git.git hosted on GitHub now advertise the tips of > git.git as well as branches from your fork. > > You may recall that Peff and I have sent a handful of patches to allow > repositories to customize how they gather references to advertise from > an alternate, and then to use those alternate tips as part of the > connectivity check (in [1] and [2], respectively).
I'm glad to hear you deployed this so quickly after review!
Show 21 quoted lines
> GitHub used to advertise '.have's on pushes to forked repositories, but > hasn't done so since 2012. We aggregate data from all forks into a > 'network.git', and expose the tips of each fork as: > > refs/remotes/<fork-id>/<refname> > > Each fork lists the 'network.git' as its alternate, and thus the > advertisement can get prohibitively large when there are many forks of a > repository. > > Michael Haggerty's work on packed refs makes finding references > pertaining only to the root computationally efficient, and [1] makes it > possible to filter down when computing the set of references to > advertise. With [1], we can specify that computation exactly and only > advertise branch tips from the root of a fork network. > > We've been slowly rolling this out to a handful of repository networks, > including forks of git.git hosted on GitHub. If you host your fork on > GitHub, you shouldn't notice anything. Hopefully, pushes to your fork > will result in smaller packfiles. In either case, nothing should break; > if it does, please feel free to email me, or support@github.com.
I tested this by updating 'master' in derrickstolee/git to match gitster/git and the pack was empty (ref update only). This makes fork management so much simpler!
Thanks! -Stolee