diff --git a/mercurial/configitems.py b/mercurial/configitems.py --- a/mercurial/configitems.py +++ b/mercurial/configitems.py @@ -590,6 +590,11 @@ coreconfigitem( b'experimental', b'maxdeltachainspan', default=-1, ) +# tracks files which were undeleted (merge might delete them but we explicitly +# kept/undeleted them) and creates new filenodes for them +coreconfigitem( + b'experimental', b'merge-track-salvaged', default=False, +) coreconfigitem( b'experimental', b'mergetempdirprefix', default=None, ) diff --git a/tests/test-merge-criss-cross.t b/tests/test-merge-criss-cross.t --- a/tests/test-merge-criss-cross.t +++ b/tests/test-merge-criss-cross.t @@ -1,3 +1,15 @@ +#testcases old newfilenode + +#if newfilenode +Enable the config option +------------------------ + + $ cat >> $HGRCPATH < [experimental] + > merge-track-salvaged = True + > EOF +#endif + Criss cross merging $ hg init criss-cross