You can run Git on object storage if you re-make packfiles
Thread
Loading the complete thread in the background. This saved snapshot is available now. Refresh
Unofficial Hacker News client; not affiliated with Y Combinator.
You can run Git on object storage if you re-make packfiles
Loading the complete thread in the background. This saved snapshot is available now. Refresh
Unofficial Hacker News client; not affiliated with Y Combinator.
mmastrac · · focus · HN ↗
mgrandl · · focus · HN ↗
throwaway7356 · · focus · HN ↗
Yes, it was not "object storage", but Git can be served from a dumb http server as static files. Now someone figured out that object storage can also serve static files via http. Wow!
eru · · focus · HN ↗
baalimago · · focus · HN ↗
<a href="https://github.com/awslabs/git-remote-s3" rel="nofollow">https://github.com/awslabs/git-remote-s3
This works seamlessly so you can run `git remote add origin s3://my-git-bucket/my-repo`
everforward · · focus · HN ↗
It only really makes sense to tarball repos into cold storage on S3 or Glacier, but short of GitLab cloud I suspect there aren’t enough repos cold enough to be worth the dev costs.
S3 that doesn’t have wild costs for git objects sounds like it’s just NFS
masklinn · · focus · HN ↗
shados · · focus · HN ↗
Works great to this day.
jauntywundrkind · · focus · HN ↗
<a href="https://github.com/Nickforall/walgit-elixir" rel="nofollow">https://github.com/Nickforall/walgit-elixir <a href="https://github.com/tobi/walgit" rel="nofollow">https://github.com/tobi/walgit (<a href="https://news.ycombinator.com/item?id=49420598">https://news.ycombinator.com/item?id=49420598) <a href="https://github.com/tuist/micelio/" rel="nofollow">https://github.com/tuist/micelio/
jiggawatts · · focus · HN ↗
notpushkin · · focus · HN ↗
JoshTriplett · · focus · HN ↗
BLAKE3 has a whole mechanism for this, and as an added bonus it'd be substantially faster.
hanwenn · · focus · HN ↗
Author thinks that delta encoding is there for no reason. Good luck, kid.
0bytes · · focus · HN ↗
gjvc · · focus · HN ↗
jamietanna · · focus · HN ↗
bryanrasmussen · · focus · HN ↗
I think that makes more sense than some spam campaign for this.
notpushkin · · focus · HN ↗
bryanrasmussen · · focus · HN ↗
xena · · focus · HN ↗
uptownhr · · focus · HN ↗
scoopertrooper · · focus · HN ↗
andrewaylett · · focus · HN ↗
For example: <a href="https://andrewaylett.github.io/rgitweb/" rel="nofollow">https://andrewaylett.github.io/rgitweb/ is a repository viewer that runs against a static git repo. It doesn't care what you're storing the pack in, just that the data is there to make the right range requests.
flowingfocus · · focus · HN ↗
slightly off topic but I found the idea of a git-proxy interesting where you start with proxying an existing forge and then later adopt the object storage backend
podviaznikov · · focus · HN ↗
never finished, because stopped having personal use case, but had exactly same idea(and a bit more features)
alizainf · · focus · HN ↗
NetOpWibby · · focus · HN ↗
delf · · focus · HN ↗
Difwif · · focus · HN ↗
delf · · focus · HN ↗
Great to have issues, PRs, etc in git, but requires each participant to set up a fork to participate.
No CI though, but an extension to capture job logs is on the roadmap.
adastra22 · · focus · HN ↗
pierrebarre · · focus · HN ↗
Works pretty awesomely with git workloads, even Linux sized trees.
jeremyjh · · focus · HN ↗
What you are saying sounds like an assertion that the problem described here[1] - by Vicent Marti - that packfiles aren't contiguous blocks of data and so every fetch fans out to more fetches from the client - is not actually a problem? Or is there an innovation in zerofs that somehow solves this for git? From what I can see it offers NFS and NBD interfaces and GitHub tried and rejected both of those very early on. Probably they did this on a more traditional remote filesystem backed by SAN or local SSD but their problem was network chatter, not storage contention.
The problem he described seems consistent with known patterns from datalake storage architectures, its a big part of why columnar storage is the only game in town for most use cases.
This is why TFA has a lot of interest here - he has changed the storage layout of packfiles to a columnar model to address this challenge.
[1] <a href="https://cursor.com/blog/git-at-any-scale#git-without-packfiles" rel="nofollow">https://cursor.com/blog/git-at-any-scale#git-without-packfil...
pierrebarre · · focus · HN ↗
[dead]
sisuo30390 · · focus · HN ↗
[dead]
colechristensen · · focus · HN ↗
<a href="https://anvil.fangorn.io/fangorn/ex_git_objectstore" rel="nofollow">https://anvil.fangorn.io/fangorn/ex_git_objectstore
LoganDark · · focus · HN ↗
And then "dotgit" was not seen ever again :)