Mercurial > hg
view tests/test-status.out @ 6805:482581431dcd
Sort removes first when applying updates (fixes issues 750 and 912)
This change ensures that removes happen first in applyupdates(). This avoids
issues where we try to make a case-only rename of a file on a case insensitive
system. Without this patch, the add of the new name happens before the remove
of the old one - which results in the file not existing, as the two names are
effectively the same.
With the patch, the old name gets removed then the new one gets added, which
is always safe.
author | Paul Moore <p.f.moore@gmail.com> |
---|---|
date | Tue, 01 Jul 2008 17:59:31 +0100 |
parents | acc40572da5b |
children | 54cd28258ea7 |
line wrap: on
line source
hg status in repo root: ? a/1/in_a_1 ? a/in_a ? b/1/in_b_1 ? b/2/in_b_2 ? b/in_b ? in_root hg status . in repo root: ? a/1/in_a_1 ? a/in_a ? b/1/in_b_1 ? b/2/in_b_2 ? b/in_b ? in_root hg status in a: ? a/1/in_a_1 ? a/in_a ? b/1/in_b_1 ? b/2/in_b_2 ? b/in_b ? in_root hg status . in a: ? 1/in_a_1 ? in_a hg status .. in a: ? 1/in_a_1 ? in_a ? ../b/1/in_b_1 ? ../b/2/in_b_2 ? ../b/in_b ? ../in_root hg status in b: ? a/1/in_a_1 ? a/in_a ? b/1/in_b_1 ? b/2/in_b_2 ? b/in_b ? in_root hg status . in b: ? 1/in_b_1 ? 2/in_b_2 ? in_b hg status .. in b: ? ../a/1/in_a_1 ? ../a/in_a ? 1/in_b_1 ? 2/in_b_2 ? in_b ? ../in_root hg status in a/1: ? a/1/in_a_1 ? a/in_a ? b/1/in_b_1 ? b/2/in_b_2 ? b/in_b ? in_root hg status . in a/1: ? in_a_1 hg status .. in a/1: ? in_a_1 ? ../in_a hg status in b/1: ? a/1/in_a_1 ? a/in_a ? b/1/in_b_1 ? b/2/in_b_2 ? b/in_b ? in_root hg status . in b/1: ? in_b_1 hg status .. in b/1: ? in_b_1 ? ../2/in_b_2 ? ../in_b hg status in b/2: ? a/1/in_a_1 ? a/in_a ? b/1/in_b_1 ? b/2/in_b_2 ? b/in_b ? in_root hg status . in b/2: ? in_b_2 hg status .. in b/2: ? ../1/in_b_1 ? in_b_2 ? ../in_b adding .hgignore adding deleted adding modified adding removed hg status: A added R removed ! deleted ? unknown hg status modified added removed deleted unknown never-existed ignored: never-existed: No such file or directory A added R removed ! deleted ? unknown hg status -C: A added A copied modified R removed ! deleted ? unknown hg status -A: A added A copied modified R removed ! deleted ? unknown I ignored C .hgignore C modified hg status ignoreddir/file: hg status -i ignoreddir/file: I ignoreddir/file adding .hgignore adding deleted adding modified adding removed