# HG changeset patch # User Giorgos Keramidas # Date 1182656626 18000 # Node ID 59b8f9361545aaa3565662b0c17202183769b86d # Parent c3da7b6cc975c4c4d0ee89bebdefd14bf519b664 tests: add merge test for changeset 9fe267f77f56 When all the files in a directory are moved somewhere else, and new files are added in changesets of the local branch, a subsequent pull and merge shouldn't rename the locally added files too. diff --git a/tests/test-merge10 b/tests/test-merge10 new file mode 100755 --- /dev/null +++ b/tests/test-merge10 @@ -0,0 +1,33 @@ +#!/bin/sh + +# Test for changeset 9fe267f77f56ff127cf7e65dc15dd9de71ce8ceb +# (merge correctly when all the files in a directory are moved +# but then local changes are added in the same directory) + +hg init a +cd a +mkdir -p testdir +echo a > testdir/a +hg add testdir/a +hg commit -u test -d '1000000 0' -m a +cd .. + +hg clone a b +cd a +echo alpha > testdir/a +hg commit -u test -d '1000000 0' -m remote-change +cd .. + +cd b +mkdir testdir/subdir +hg mv testdir/a testdir/subdir/a +hg commit -u test -d '1000000 0' -m move +mkdir newdir +echo beta > newdir/beta +hg add newdir/beta +hg commit -u test -d '1000000 0' -m local-addition +hg pull ../a +hg up -C 2 +hg merge +hg stat +hg diff --nodates diff --git a/tests/test-merge10.out b/tests/test-merge10.out new file mode 100644 --- /dev/null +++ b/tests/test-merge10.out @@ -0,0 +1,19 @@ +1 files updated, 0 files merged, 0 files removed, 0 files unresolved +pulling from ../a +searching for changes +adding changesets +adding manifests +adding file changes +added 1 changesets with 1 changes to 1 files (+1 heads) +(run 'hg heads' to see heads, 'hg merge' to merge) +0 files updated, 0 files merged, 0 files removed, 0 files unresolved +merging testdir/subdir/a and testdir/a +0 files updated, 1 files merged, 0 files removed, 0 files unresolved +(branch merge, don't forget to commit) +M testdir/subdir/a +diff -r d02b3fc32762 testdir/subdir/a +--- a/testdir/subdir/a ++++ b/testdir/subdir/a +@@ -1,1 +1,1 @@ a +-a ++alpha