filemerge: move check for identical sides out of filemerge()
`filemerge.filemerge()` returns `None` if no merge was necessary
because the two sides were identical. I don't think it should be that
function's responsibility to handle that case; we should ideally not
even call `filemerge.filemerge()` if the two inputs identical. This
patch therefore moves the check out to the caller (`mergestate.py`).
The largefiles test changed because we now notice that the two sides
made the same change, so we don't consider it a merge. Also note that
the new message better matches the line above it in the test output.
Differential Revision: https://phab.mercurial-scm.org/D12154
This directory is meant to cache artifacts useful for tests (such as bundle).
Those artifacts need to be cached because they are slow to regenerate on each
test but too large to be tracked within the repository. They are not expected
to change between each run and can be cached.
The `./scripts/` contains code to generate the artifact while the `cache`
directory contains resulting artifact.