Josh Triplett <josh@xxxxxxxxxxxxxxxx> writes: > We could, but if we (or one of the many third-party git implementations) > miss a case, gitlinks+reachability may appear to work in many cases with > dataloss afterward, while gitrefs will fail early and not appear > functional. I wonder what happens if we do not introduce the "gitref" but instead change the behaviour of "gitlink" to imply an optional reachability. That is, when enumerating what is reachable in your repository, if you see a gitlink and if you notice that you locally have the target of that gitlink, you follow, but if you know you lack it, you do not error out. This may be making things too complex to feasibily implement by simplify them ;-) and I see a few immediate fallout that needs to be thought through (i.e. downsides) and a few upsides, too. I am feeling feverish and not thinking straight, so I won't try to weigh pros-and-cons. This would definitely need protocol extension when transferring objects across repositories.