view tests/test-merge4 @ 8742:a964ab624385

merge: allow merging going backwards New behavior is generally superior and more correct, except possibly with regards to missing files. hg up . is now effectively a no-op, which is probably the desired behavior for people expecting to move to tip, but may surprise people who were expecting deleted files to reappear. case 1: update to . a-w -> a-w classic: ancestor a missing recreated right? rmed recreated WRONG added forgotten WRONG changed preserved RIGHT conflicted can't happen backward merge: ancestor a (NO EFFECT) missing missing wrong? rm'ed rm'ed RIGHT added preserved RIGHT changed preserved RIGHT conflicted can't happen case 2: update to ancestor of . a-b-w -> b-w \ a classic: ancestor a missing recreated right? rmed recreated wrong? added forgotten wrong? changed preserved RIGHT conflicted preserved wrong? backwards merge: ancestor b missing missing or conflict right? rm'ed missing or conflict right? changed preserved RIGHT conflicted merge RIGHT added preserved right?
author Matt Mackall <mpm@selenic.com>
date Mon, 08 Jun 2009 18:14:44 -0500
parents e506c14382fd
children
line wrap: on
line source

#!/bin/sh

hg init
echo This is file a1 > a
hg add a
hg commit -m "commit #0" -d "1000000 0"
echo This is file b1 > b
hg add b
hg commit -m "commit #1" -d "1000000 0"
hg update 0
echo This is file c1 > c
hg add c
hg commit -m "commit #2" -d "1000000 0"
hg merge 1
rm b
echo This is file c22 > c
hg commit -m "commit #3" -d "1000000 0"