Mercurial > public > mercurial-scm > hg
diff tests/test-merge-remove @ 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 | |
children | 53cbb33e1269 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-merge-remove Tue Mar 18 04:07:39 2008 -0300 @@ -0,0 +1,29 @@ +#!/bin/sh + +hg init repo +cd repo + +echo foo > foo +echo bar > bar +hg ci -qAm 'add foo bar' + +echo foo2 >> foo +echo bleh > bar +hg ci -m 'change foo bar' + +hg up -qC 0 +hg mv foo foo1 +echo foo1 > foo1 +hg cat foo >> foo1 +hg ci -m 'mv foo foo1' + +hg merge +hg debugstate --nodates +hg st -q + +echo '% removing foo1 and bar' +cp foo1 F +cp bar B +hg rm -f foo1 bar +hg debugstate --nodates +hg st -qC