Today I was wandering the world of HTTP/3 and cURL. As it turns out, you need to compile it yourself in order to get experimental HTTP/3 support.
But when doing a recursive clone on Cloudflare’s quiche library I was greeted with horribly slow clones. I saw quickly what the issue was. An https://
clone in a submodule. Luckily git provides a way to rewrite URLs, without touching anything in the repo! Perfect for these kind of hacks.
In order to make use of it just add a blob like this into your .gitconfig
[url "ssh://git@<remotehost>/"]
insteadOf = https://<remotehost>/
So in my case it looks somewhat like this:
[url "ssh://[email protected]/"]
insteadOf = https://gitlab.com/
[url "ssh://[email protected]/"]
insteadOf = https://github.com/
You can also just apply this override to pushes, simply set pushInsteadOf
instead of insteadOf
. Or hell. Push to a different URL when you pull from another override, go nuts!