feat(rev_store): store references for tip negotiation#13659
feat(rev_store): store references for tip negotiation#13659Alizter merged 1 commit intoocaml:mainfrom
Conversation
Signed-off-by: Ali Caglayan <alizter@gmail.com>
shym
left a comment
There was a problem hiding this comment.
I confirm that this solves the issue for me, thanks!
Compared to an implementation that would use an explicit --negotiation-tip= using the last fetch from that repository, I understand we gain possibly if some repositories share some history but I wonder about the longer-term performance cost and the privacy leak due to negotiating with all the tips of all the repos we’ve pulled from (I’m not sure how to evaluate them, though).
|
Hmm I suppose you are right. Currently we send all the tips, even if they aren't direct related to the remote. I suppose we could improve this by restricting the tips per remote and passing a glob to git. This won't be a shell expansion but should be something that git knows how to interpret without having to choose the exact tips ourselves. This is probably something I can handle in a follow up to this PR however. |
We now store refs of fetched commits to aid later negotiation.
See
doc/dev/rev-store.mdin this PR for a detailed explanation of the mechanism.