|
|
|
|
|
by reissbaker
872 days ago
|
|
When I was at Meta, using the custom VCS tooling was pretty great, especially considering the repo size. That being said, for both this and Jujutsu, I feel like without open-sourcing the secret sauce (the super-scalable backend), it's hard to understand why anyone outside of the respective orgs would adopt; it's a not-well-known layer on top of Git, which is: a) Known by almost anyone you're likely to hire or work with, and b) Will have all the same scalability problems with large monorepos regardless of what client you're using. If Sapling and Jujutsu don't solve the scaling problems, and everyone already knows git (and you're still using git under the hood), what's the point? It's nice that it's open-source but to get traction I feel like they need to open-source the backends. I'm sure plenty of mid-sized companies struggling to manage their git repos would be happy to use the Meta/Google solution to the problem, but neither of these projects includes the part where the problem gets solved. |
|
From github:
Sapling SCM is comprised of three main components:
The Sapling client: The client-side sl command line and web interface for users to interact with Sapling SCM.
Mononoke: A highly scalable distributed source control server. (Not yet supported publicly.)
EdenFS: A virtual filesystem for efficiently checking out large repositories. (Not yet supported publicly.)
And from the mononoke page:
Mononoke is still in development. We are making it available now because we plan to start making references to it from our other open source projects.
The version that we provide on GitHub is omitting some functions.
This is because the code is exported verbatim from an internal repository at Facebook, and not all of the scaffolding from our internal repository can be easily extracted. The key areas where we need to shore things up are:
Support for running thrift based apis.
Production metadata SQL support (e.g. something like a MySQL backend). We provide sqlite in OSS for now.
Production blobstore storage backends (e.g. something like S3). We provide SQL (on sqlite) and File System backends currently in OSS.
Linux is Mononoke's primary target plaform with OSS CI also running on MacOS. Other Unix-like OSes may be supported in the future.