mirror of
https://github.com/facebook/sapling.git
synced 2024-10-12 17:58:27 +03:00
cf4b52c19c
Summary: The mutationstore is a new store for recording records of commit mutations for commits that are not in the local repository. It uses an indexedlog to store the data. Each mutation entry corresponds to the information the mutation that led to the creation of a particular commit, which is recorded as the successor in the entry. Entries can come from three possible places: * `Commit` metadata for a commit not available locally * `Obsmarkers` for repos that have been migrated from evolution tracking * `Synthetic` for entries created synthetically, e.g. by a pullcreatemarkers implementation. The other commits referred to in an entry must predate the successor commit. For entries that originated from commits, this is ensured, as the successor commit hash includes the other commit hashes. For other entry types, it is an error to refer to later commits, and any entry that causes a cycle will be ignored. Reviewed By: quark-zju Differential Revision: D12980773 fbshipit-source-id: 040d3f7369a113e710ed8c9f61fabec6c5ec9258
17 lines
375 B
TOML
17 lines
375 B
TOML
[package]
|
|
name = "mutationstore"
|
|
version = "0.1.0"
|
|
|
|
[dependencies]
|
|
byteorder = "1.2.7"
|
|
failure = "0.1.3"
|
|
failure_derive = "0.1.3"
|
|
indexedlog = { path = "../indexedlog" }
|
|
types = { path = "../types" }
|
|
vlqencoding = { path = "../vlqencoding" }
|
|
|
|
[dev-dependencies]
|
|
rand = "0.5"
|
|
tempdir = "0.3.7"
|
|
types = { path = "../types", default-features = false, features = ["for-tests"] }
|