view tests/test-status @ 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 001703ec311d
line wrap: on
line source

#!/bin/sh

hg init repo1
cd repo1
mkdir a b a/1 b/1 b/2
touch in_root a/in_a b/in_b a/1/in_a_1 b/1/in_b_1 b/2/in_b_2
echo "hg status in repo root:"
hg status
echo "hg status . in repo root:"
hg status .
for dir in a b a/1 b/1 b/2; do
    echo "hg status in $dir:"
    hg status --cwd "$dir"
    echo "hg status . in $dir:"
    hg status --cwd "$dir" .
    echo "hg status .. in $dir:"
    hg status --cwd "$dir" ..
done
cd ..

hg init repo2
cd repo2
touch modified removed deleted ignored
echo "ignored" > .hgignore
hg ci -A -m 'initial checkin' -d "1000000 0"
sleep 1 # make sure mtime is changed
touch modified added unknown ignored
hg add added
hg remove removed
rm deleted
echo "hg status:"
hg status
echo "hg status modified added removed deleted unknown never-existed ignored:"
hg status modified added removed deleted unknown never-existed ignored