Mercurial

Mercurial's major design goals include high performance and scalability, decentralization, fully distributed collaborative development, robust handling of both plain text and binary files, and advanced branching and merging capabilities, while remaining conceptually simple.

[2] The impetus for this was the announcement earlier that month by Bitmover that they were withdrawing the free version of BitKeeper because of the development of SourcePuller.

Given the multiple meanings, the convenient abbreviation, and the good fit with my pre-existing naming scheme (see my email address), it clicked instantly.

For repository access via a network, Mercurial uses an HTTP-based protocol that seeks to reduce round-trip requests, new connections, and data transferred.

Facebook is using the Rust programming language to write Mononoke,[12][13] a Mercurial server specifically designed to support large multi-project repositories.

In 2013, Facebook adopted Mercurial and began work on scaling it to handle their large, unified code repository.

Figure 1: Some important operations of Mercurial and their relations.