copies: make _checkcopies handle copy sequences spanning the TCA (
issue4028)
When working in a rotated DAG (for a graftlike merge), there can be files
that are renamed both between the base and the topological CA, and between
the TCA and the endpoint farther from the base. Such renames span the TCA
(and thus need both passes of _checkcopies to be fully detected), but may
not necessarily be divergent.
Make _checkcopies return "incomplete copies" and "incomplete divergences"
in this case, and let mergecopies recombine them once data from both passes
of _checkcopies is available.
With this patch, all known cases involving renames and grafts pass.
(Developed together with Pierre-Yves David)
# this file holds the definitions that are used in various bzr tests
TERM=dumb; export TERM
echo '[extensions]' >> $HGRCPATH
echo 'convert = ' >> $HGRCPATH
glog()
{
hg log -G --template '{rev}@{branch} "{desc|firstline}" files: {files}\n' "$@"
}
manifest()
{
echo "% manifest of $2"
hg -R $1 manifest -v -r $2
}