radicle-dev / radicle-link

The second iteration of the Radicle code collaboration protocol.
Other
421 stars 39 forks source link

net: run rere after serving the fetch #652

Closed kim closed 3 years ago

kim commented 3 years ago

Running both concurrently makes things harder to reason about. Better opportunities for optimisation and interleaving may arise with git protocol v2.

Signed-off-by: Kim Altintop kim@monadic.xyz

xla commented 3 years ago

This will also limit the case where we see history rewrites since rere won't go before the replication :)

Does that not still depend on respecting the force flag as addressed in libgit2/libgit2#5854

FintanH commented 3 years ago

Does that not still depend on respecting the force flag as addressed in libgit2/libgit2#5854

Not necessarily. Emphasis on the word limit. We were running into the issue because the seed would rere before replicate and we would witness the rewrite. Since we're enforcing replicate goes before rere here it means that the history will be preserved. But it doesn't rule out all history rewrites, of course.