mirror of
https://github.com/facebook/sapling.git
synced 2024-10-10 16:57:49 +03:00
691bc90d13
Summary: Add `memctx.__setitem__(path, fctx)` API to change a file in memctx. This will be used in upcoming dirsync changes. Regarding on `memctx` vs `overlayworkingctx`. Both need some changes to fit the dirsync use-case (overlayworkingctx needs "amend", not "commit on top of", memctx needs to be mutable). The main difference is `overlayworkingctx` uses a concrete `cache` dict for path, data, and metadata. `memctx` uses a concrete list of file paths, but file data, metadata is abstracted - it uses a function that returns fctx. I would like to preserve the laziness of reading files and metadata (especially for LFS), so I picked the `memctx` instead of `overlayworkingctx` as the starting point. Reviewed By: DurhamG Differential Revision: D26726475 fbshipit-source-id: 7c16980ffa1c83fe0ff6d70c60b1daae5e266683 |
||
---|---|---|
.. | ||
contrib | ||
distutils_rust | ||
doc | ||
edenscm | ||
edenscmnative | ||
exec | ||
hgcache_size_logger | ||
i18n | ||
lib | ||
newdoc | ||
pystubs | ||
slides | ||
tests | ||
.editorconfig | ||
.flake8 | ||
.gitignore | ||
COPYING | ||
gen_version.py | ||
hgeditor | ||
Makefile | ||
README.rst | ||
setup3.py | ||
setup.py |
Mercurial ========= Mercurial is a fast, easy to use, distributed revision control tool for software developers. Basic install:: $ make # see install targets $ make install # do a system-wide install $ hg debuginstall # sanity-check setup $ hg # see help Running without installing:: $ make local # build for inplace usage $ ./hg --version # should show the latest version See https://mercurial-scm.org/ for detailed installation instructions, platform-specific notes, and Mercurial user information.