view tests/test-update-reverse @ 2021:fc22ed56afe3

Fix hg push and hg push -r sometimes creating new heads without --force. Fixing issue179. The algorithm checks if there not more new heads on the remote side than heads which become non-heads due to getting children. Pushing this repo: m /\ 3 3a| |/ / 2 2a |/ 1 to a repo only having 1, 2 and 3 didn't abort requiring --force before. Added test cases for this and some doc strings for used methods.
author Thomas Arendsen Hein <thomas@intevation.de>
date Wed, 29 Mar 2006 22:35:21 +0200
parents 7544700fd931
children
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