Meta's large-scale source code management system 'Sapling' is open source



Sapling , a source code management system developed and used by Meta for 10 years, has been open sourced. Git compatible and basic commands are similar, and all commands are designed to be simple and easy to use. Sapling is open to the public from November 15, 2022.

Sapling: Source control that's user-friendly and scalable

https://engineering.fb.com/2022/11/15/open-source/sapling-source-control-scalable/

Meta introduces Sapling as 'a source control system used in Meta that emphasizes usability and scalability.' Many of the basic concepts are familiar to users of Git and Mercurial, and it seems that it is designed to greatly facilitate the workflow of grasping the repository, committing, and recovering from mistakes.

Combined with a Sapling-compatible server and virtual file system, Sapling can handle Meta's internal repositories with tens of millions of files, commits and branches. The virtual file system will be open sourced in the future.



Sapling was originally a project started by Meta (Facebook) to scale up a large monolithic repository (monorepo) for internal use. Managing a large-scale repository such as that used in Meta is difficult with a general source code management system, and it seems that the division of the repository was not realistic from the viewpoint of mobility. Therefore, he started Sapling as an extension of the free software version control system '

Mercurial ' and rapidly grew it into an original system.

Sapling has solved the point that many users have historically complained about, ``I have to use arcane commands to reach a seemingly simple goal,'' and is simple in many ways. Meta says that it is finished.

Sapling also provides a command called ' Smartlog ' that allows you to see your repository at a glance, various tools to fix mistakes, and tools to easily edit commits in your stack.



Meta says, “Source control is one of the most important tools for the modern developer, and through tools like Git and GitHub, it has become the cornerstone of the entire software industry. We've invested a lot to build it, and now users can clone existing repositories with Sapling's built-in Git support and experiment with its various features. It's the first step in a long process of exposing the entire Sapling system to the world.'

in Software, Posted by log1p_kr