Mercurial > hg-stable
view tests/test-merge-commit @ 7381:b965605dfb2e
convert: be even more tolerant when detecting svn tags
Former code failed when tracking child directories we assumed were renamed with
their parents but were really created in the tags directory. This happens in
jQuery repository with /tags/ui/1.5b4/release@5455.
author | Patrick Mezard <pmezard@gmail.com> |
---|---|
date | Sat, 15 Nov 2008 15:51:26 +0100 |
parents | 46280c004f22 |
children | 6c82beaaa11a |
line wrap: on
line source
#!/bin/sh # check that renames are correctly saved by a commit after a merge # test with the merge on 3 having the rename on the local parent hg init a cd a echo line1 > foo hg add foo hg ci -m '0: add foo' -d '0 0' echo line2 >> foo hg ci -m '1: change foo' -d '0 0' hg up -C 0 hg mv foo bar rm bar echo line0 > bar echo line1 >> bar hg ci -m '2: mv foo bar; change bar' -d '0 0' hg merge 1 echo '% contents of bar should be line0 line1 line2' cat bar hg ci -m '3: merge with local rename' -d '0 0' hg debugindex .hg/store/data/bar.i hg debugrename bar hg debugindex .hg/store/data/foo.i # revert the content change from rev 2 hg up -C 2 rm bar echo line1 > bar hg ci -m '4: revert content change from rev 2' -d '0 0' hg log --template '#rev#:#node|short# #parents#\n' echo '% this should use bar@rev2 as the ancestor' hg --debug merge 3 echo '% contents of bar should be line1 line2' cat bar hg ci -m '5: merge' -d '0 0' hg debugindex .hg/store/data/bar.i # same thing, but with the merge on 3 having the rename on the remote parent echo echo cd .. hg clone -U -r 1 -r 2 a b cd b hg up -C 1 hg merge 2 echo '% contents of bar should be line0 line1 line2' cat bar hg ci -m '3: merge with remote rename' -d '0 0' hg debugindex .hg/store/data/bar.i hg debugrename bar hg debugindex .hg/store/data/foo.i # revert the content change from rev 2 hg up -C 2 rm bar echo line1 > bar hg ci -m '4: revert content change from rev 2' -d '0 0' hg log --template '#rev#:#node|short# #parents#\n' echo '% this should use bar@rev2 as the ancestor' hg --debug merge 3 echo '% contents of bar should be line1 line2' cat bar hg ci -m '5: merge' -d '0 0' hg debugindex .hg/store/data/bar.i