view tests/test-update-reverse @ 6297:fed1a9c22076

dirstate.remove: during merges, remember the previous file state We encode the previous state as a negative file size (AFAICS, previous versions of hg always have size == 0 when state == 'r'). We save the state of 'm'erged and dirty files, because they're the two states that indicate that a file has to be committed on a merge to correctly record per-file history.
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
date Tue, 18 Mar 2008 04:07:39 -0300
parents 7544700fd931
children 4c94b6d0fb1c
line wrap: on
line source

#!/bin/sh

hg init
touch a
hg add a
hg commit -m "Added a" -d "1000000 0"

touch main
hg add main
hg commit -m "Added main" -d "1000000 0"
hg checkout 0

echo Main should be gone
ls

touch side1
hg add side1
hg commit -m "Added side1" -d "1000000 0"
touch side2
hg add side2
hg commit -m "Added side2" -d "1000000 0"

hg log

echo Should have two heads, side2 and main
hg heads

echo Should show "a side1 side2"
ls

hg update --debug -C 1
echo Should only show "a main"
ls