A Scalable, User-Friendly Source Control System.
Go to file
Michael Bolin ac5b213e92 Include the dirstate tuples and copymap when backing up the dirstate.
Summary:
Previously, the `savebackup()` and `restorebackup()` methods in `eden_dirstate`
only retained the parent commit hashes. With this change, now the dirstate tuples
and entries in the copymap for the dirstate are also included as part of the saved
state.

Failing to restore all of the state caused issues when doing things like aborting
an `hg split`, as observed by one of our users. Although this fix works, we ultimately
plan to move the responsibility for persisting dirstate data out of Eden and into the
Hg extension. Then the data will live in `.hg/dirstate` like it would for the default
dirstate implementation.

Reviewed By: simpkins

Differential Revision: D6145420

fbshipit-source-id: baa077dee73847a47cc171cd980cdd272b3a3a99
2017-10-25 22:36:06 -07:00
common Completely redo CMakeFiles.txt and getdeps.sh for new thrift 2017-10-17 00:35:03 -07:00
eden Include the dirstate tuples and copymap when backing up the dirstate. 2017-10-25 22:36:06 -07:00
external get the open source build working 2017-03-06 20:28:48 -08:00
.buckconfig move eden/fs/cli to eden/cli 2017-04-14 11:39:01 -07:00
.gitignore Initial commit 2016-05-12 14:09:13 -07:00
CONTRIBUTING.md Initial commit 2016-05-12 14:09:13 -07:00
DEFS get the open source build working 2017-03-06 20:28:48 -08:00
getdeps.py replace the getdeps.sh script with a python version 2017-03-08 16:38:36 -08:00
install Make oss install script less hacky using --out argument to buck build. 2017-02-28 12:12:35 -08:00
LICENSE Initial commit 2016-05-12 14:09:13 -07:00
PATENTS Initial commit 2016-05-12 14:09:13 -07:00
README.md Fix a typo in Eden's README.md. 2016-05-13 09:32:03 -07:00

Eden

Eden is a project with several components, the most prominent of which is a virtual filesystem built using FUSE.

Caveat Emptor

Eden is still in early stages of development. We are making it available now because we plan to start making references to it from our other open source projects, such as Buck, Watchman, and Nuclide.

The version that we provide on GitHub does not build yet.

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:

  • The reinterpretations of build macros in DEFS.
  • A process for including third-party dependencies (presumably via Git submodules) and wiring up the external_deps argument in the build macros to point to them.
  • Providing the toolchain needed to power the [undocumented] thrift_library() rule in Buck.

The goal is to get Eden building on both Linux and OS X, though Linux support is expected to come first.