sapling/hggit
Siddharth Agarwal 89c409af60 verify: add new command to verify the contents of a Mercurial rev
Since the Git to Mercurial conversion process is incremental, it's at risk of
missing files, or recording files the wrong way, or recording the wrong commit
metadata. Add a command called 'gverify' that can verify the contents of a
particular Mercurial rev against the corresponding Git commit.

Currently, this is limited to checking file names, flags and contents, but this
can be made as robust as desired. Further additions will probably require
refactoring git_handler.py a bit though.

This function is pretty fast: on a Linux machine with a warm cache, verifying a
repository with around 50,000 files takes just 20 seconds. There is scope for
further improvement through parallelization, but conducting tree walks in
parallel is non-trivial with the current worker infrastructure in Mercurial.
2014-02-26 14:19:24 -08:00
..
help docs: update to correctly reflect that local git repositories are supported 2012-09-13 20:57:37 -04:00
__init__.py verify: add new command to verify the contents of a Mercurial rev 2014-02-26 14:19:24 -08:00
_ssh.py Upgraded to use latest version of dulwich (0.9.1). 2013-09-13 01:42:27 +01:00
git_handler.py git_handler: remove init_if_missing 2014-02-25 20:01:42 -08:00
gitdirstate.py gitdirstate: import errno for handling OSError 2014-02-07 10:43:49 -05:00
gitrepo.py gitrepo: drop support for Mercurial < 1.7 2014-02-19 15:54:37 -08:00
hg2git.py hg2git: fix subrepo handling to be deterministic 2014-02-19 20:52:59 -08:00
hgrepo.py hgrepo.tags: drop support for Mercurial < 2.0 2014-02-19 16:09:23 -08:00
overlay.py overlayrevlog: handle root commits correctly 2014-02-25 00:23:12 -08:00
util.py util: drop support for Mercurial < 1.4 2014-02-19 18:49:42 -08:00
verify.py verify: add new command to verify the contents of a Mercurial rev 2014-02-26 14:19:24 -08:00