Hacker News new | ask | show | jobs
by fuddle 896 days ago
As someone who's never heard of a metarepo before, I'm still not sure exactly what it is or why I should use it after reading their landing page. I think a metarepo explainer video would helpful.
2 comments

Vlad from metahead here. We answer this in the FAQ – metarepo is just a git repo that you can slice and dice any way you want while preserving history and having the ability to work on your part of the code. We went with "meta" because it's not exactly mono- or poly- – it's flexible enough so that you can make anything out of it. It also stores information about how your repos / projections relate – in that sense it's "meta" as well.
“Meta” would normally mean that a metarepo relates to a repo like a repo relates to a file. That would imply an orthogonal versioning axis, similar to a bitemporal database.

I find the term confusing here because that’s not really what it is (if my understanding is correct).

It does, in fact, relate to a repo like a repo relates to a file! Because every projection only contains related history and subtrees – much like if you were looking at a history of a file in a git repository
So I can “commit” a repo containing some history as the new version of a previous repo containing a different history?
You can, if histories are related. They usually are - you add commits on top. Your history will be reverse-transformed in such a way so that its impact on the whole metarepo can be assessed. So if you modified a file in a library that ten other applications depend on, those applications would get this modification applied and would trigger a CI run to verify your change.
It's... a materialized view? There's a great big ur-repo back there somewhere, and your tool provides multiple views into it?

Hoenstly, that's a neat idea. No use to me, but a neat idea.

Yes it's exactly how you describe it
Where is your FAQ? I couldn't find it in the first few pages of your websites. No link in the footer either. The only button in your navbar is "about" which is not it.
It's a bit down on the front page

https://metahead.webflow.io/#faq:~:text=Frequently%20Asked%2...

But we got this feedback - we will make it more visible

Thanks for the explanation, that helps a bit. I still think a video explainer would be helpful. :)
"metadata" is data that describes other data.

I would guess a "metarepo" is a repo that contains other repos.

Why would you want this? It's an alternative to monorepos or hacky homegrown solutions for managing related repos.