sapling/eden/scm
Jun Wu bc80499084 git: avoid deadlock with nested submodules of same URL
Summary:
Some submodules (ex. gflags) have submodules (ex. gflags/doc) that share the same
URL with the parent repo. Previously those 2 repos would deadlock on the
backing repo wlock on checkout, and the git reference would conflict.

Fix them by:
- Skip the submodule backing repo wlock, since nobody uses the backing repo's
  working copy.
- Escape `/` to `_` in the git reference name to avoid conflict.

Reviewed By: muirdm

Differential Revision: D42949672

fbshipit-source-id: fc471f9c6aeec05212911e3ffeb8f53f0427fa38
2023-02-02 11:32:30 -08:00
..
contrib test-dirstate-nonnormalset: remove the test 2023-01-27 15:10:14 -08:00
distutils_rust distutils_rust: drop HOMEBREW_CCCFG env 2022-12-01 12:30:00 -08:00
doc collapse edenscm.mercurial package into edenscm 2022-08-24 13:45:53 -07:00
edenscm git: avoid deadlock with nested submodules of same URL 2023-02-02 11:32:30 -08:00
edenscmnative lib: vendor streampager 2023-02-01 11:58:45 -08:00
exec Update tokio-1.21.2 to tokio-1.25.0 2023-01-30 14:49:36 -08:00
ghstack chore: apply Black formatter to ghstack fork 2023-01-24 12:48:13 -08:00
hgcache_size_logger Build for aarch64 in addition to x86_64 2022-08-03 07:09:58 -07:00
i18n docs: clarify help for "-I" and "-X" flags 2022-11-13 23:38:55 -08:00
lib Reviewed By: zertosh 2023-02-02 04:42:49 -08:00
newdoc newdoc: remove outdated content 2022-12-01 14:33:34 -08:00
packaging ci: bump python3.11.0 to python3.11.1 (#496) 2023-01-24 12:45:16 -08:00
pystubs upgrade pyre version in fbcode/eden - batch 1 2023-02-01 20:39:41 -08:00
slides collapse edenscm.mercurial package into edenscm 2022-08-24 13:45:53 -07:00
tests git: avoid deadlock with nested submodules of same URL 2023-02-02 11:32:30 -08:00
.editorconfig Move fb-mercurial sources into an eden/scm subdirectory. 2019-11-13 16:04:48 -08:00
.flake8 rebase: do not rebase public commits with -b flag 2022-12-20 13:51:43 -08:00
.gitignore build: fix binary name produced on make oss (#60) 2022-11-04 16:41:43 -07:00
.rustfmt.toml rustfmt: set group_imports to StdExternalCrate 2021-10-19 11:07:24 -07:00
Cargo.toml lib: vendor streampager 2023-02-01 11:58:45 -08:00
COPYING Move fb-mercurial sources into an eden/scm subdirectory. 2019-11-13 16:04:48 -08:00
fsprobe.sh codemod: update license headers 2022-01-05 14:43:32 -08:00
gen_version.py Add annotations to eden 2022-02-14 12:17:43 -08:00
hgeditor Move fb-mercurial sources into an eden/scm subdirectory. 2019-11-13 16:04:48 -08:00
Makefile oss: make 'make tests' run Python tests (#458) 2023-01-27 10:44:33 -08:00
README.md migrate README.rst to README.md 2022-07-20 09:19:09 -07:00
setup.py conch_parser: move Python bindings to bindings module 2023-01-30 10:56:17 -08:00

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.