Hacker Newsnew | past | comments | ask | show | jobs | submit | zdgeier's commentslogin

I’m building a non-git alternative

https://oak.space

Would love for anyone to check it out!


Very interesting, I missed your original post[0], will definitely look into it further. What's new since you've posted?

[0] https://news.ycombinator.com/item?id=48631726


We've added some things like CI, Windows support, and starting some work on path-based permissioning for monorepos. These are still in the early stages so not documented that great yet and need to be tested a little bit more. Should have more updates in the next couple weeks.


Do you think it's possible in the next few years or so that agents will improve to the point that some of approval work can be offloaded to them?


That’s like asking if a relationship can improve to a point that communication is no longer necessary. It misses the point.


True, I do wonder if we focused more on the parallelism aspect with mounts that it would resonate with people more. Thanks for the thoughts!


It's also made for humans as well :) We have some nice TUI stuff in the CLI that you might like. Check it out if you're curious and let me know if you have any thoughts.


Agents in the cloud (and locally) need to have a full repo, even if they only need a small percentage of a repo to make a change. You can also imagine if changes are being made in the cloud by multiple agents, each one of these agents need a shallow clone at the very least. If you're spinning up many agents in the cloud this becomes a bottleneck. So not really that downloading things is a bottleneck, it's that agents need to download way less to make the same decisions and changes.


Mostly through networked file system mounts with FSKit/FUSE backing when working on tasks in parallel. May be applicable for human facing tools but I think workflows there are already pretty set with having files locally and mounts need some lifecycles that agents are probably better at handling.


Happy to describe or answer questions here. It's a version control system (like Git/GitHub) designed for agents. Some specific things that make it different than git are a simplified branching system and networked mounts so you can work on tasks on a repo in parallel.


Sounds good, but isn't that too little to justify moving out of git? Why couldn't this be written on top of git?


A good tingle or bad tingle? haha


real good


Good question, the files are grabbed on demand from the server so the agent can fetch everything it needs to run tests, a dev server, or anything it does normally. Now this might be slightly slower in some cases where the history is short, but the bigger the repo and files the more this makes sense. So the full code is available and buildable, just over the network instead of locally.

Another thing, inside these mounts build artifacts and directories like node_modules can act kinda weird, so we just have some extra context in the AGENTS.md to host these in a different location from the mount. or agents usually figure this out on their own in my experience.


I do wonder how far you can make git work like google3. Partially why I'm making Oak is because I think it might be hard to impossible to implement the necessary features for monorepos to work correctly in Git. I don't doubt that it can be done, I do wonder how it will feel though.


I took a stab at this here https://github.com/mohsen1/git-lazy-mount

It seems to be feasible and useful. I'm still ironing out some details but I thought I share early


If the goal is just to make it work like google3, then hg and jj and sapling can all already achieve this. There’s no need for a new contender here. The differentiation must come from something else.

But of course at Google the file system part (CitC) is a layer beneath the version control system and is shared across different vcs tools.


I do think hosting is an important part of the VCS story. I agree that hg and jj and sapling are capable of being front ends to a google3 like backend GitHub like thing to support it (Google has this internally for jj). Of course some people are working on hosting solutions for these but it feels wrong to me that hosting platforms and their underlying VCS are not made by the same team. IMO people like google3 so much because it’s one integrated system which is the approach I’m trying with Oak.


Well even at Google the hosting solutions and the VCS are not made by the same team. I lack imagination in thinking how being made by the same team can improve things, but that’s on me. Good luck!


Public hg and jj are just a front-end to git. No virtual file system overlay or anything like that. Meta has open sourced many of the components of sapling, but there is no plumbing to put it all together in the same configuration.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: