Mercurial > hg
view tests/test-diff-change @ 9954:d6a307719ccb stable
fix bug in prepush logic involving merge changesets
When creating new branches and merging them into existing ones, you would
sometimes be able to push some changesets (the existing branches) without using
--force, even when that creates a new head on the remote.
A test which triggers the error has been added.
author | Sune Foldager <cryo@cyanite.org> |
---|---|
date | Mon, 30 Nov 2009 14:58:52 +0100 |
parents | 89c2b78faec4 |
children |
line wrap: on
line source
#!/bin/sh -e # test of hg diff --change set -e ec() { echo "invoking $@:" "$@" } hg init a cd a echo "first" > file.txt hg add file.txt hg commit -m 'first commit' # 0 echo "second" > file.txt hg commit -m 'second commit' # 1 echo "third" > file.txt hg commit -m 'third commit' # 2 ec hg diff --nodates --change 1 echo #rev=$(hg log -r 1 --template '{node|short}') rev=e9b286083166 ec hg diff --nodates --change "$rev" ## # Testing diff -c when merge for i in 1 2 3 4 5 6 7 8 9 10; do echo $i >> file.txt done hg commit -m "lots of text" # 3 sed -e 's,^2$,x,' file.txt > file.txt.tmp mv file.txt.tmp file.txt hg commit -m "changed 2 to x" # 4 hg up -r 3 > /dev/null 2>&1 # updated, merged, removed, unresolved sed -e 's,^8$,y,' file.txt > file.txt.tmp mv file.txt.tmp file.txt hg commit -m "change 8 to y" > /dev/null 2>&1 # 5 # created new head hg up -C -r 4 > /dev/null 2>&1 # updated, merged, removed, unresolved hg merge -r 5 > /dev/null 2>&1 # updated, merged, removed, unresolved hg commit -m "merging 8 to y" # 6 echo ec hg diff --nodates --change 6 # must be similar to hg diff --nodates --change 5 #echo #hg log echo echo "EOF" # vim: set ts=4 sw=4 et: