tests/test-rebase-keep-branch
author Patrick Mezard <pmezard@gmail.com>
Mon, 15 Jun 2009 00:03:26 +0200
changeset 8810 ac92775b3b80
parent 8270 3477ad0b1f2c
child 11198 b345b1cc124f
permissions -rwxr-xr-x
Add patch.eol to ignore EOLs when patching (issue1019) The intent is to fix many issues involving patching when win32ext is enabled. With win32ext, the working directory and repository files EOLs are not the same which means that patches made on a non-win32ext host do not apply cleanly because of EOLs discrepancies. A theorically correct approach would be transform either the patched file or the patch content with the encoding/decoding filters used by win32ext. This solution is tricky to implement and invasive, instead we prefer to address the win32ext case, by offering a way to ignore input EOLs when patching and rewriting them when saving the patched result.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
7468
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
     1
#!/bin/sh
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
     2
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
     3
echo "[extensions]" >> $HGRCPATH
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
     4
echo "graphlog=" >> $HGRCPATH
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
     5
echo "rebase=" >> $HGRCPATH
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
     6
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
     7
addcommit () {
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
     8
    echo $1 > $1
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
     9
    hg add $1
8168
8766fee6f225 tests: removed redundant "-u test" from test scripts
Martin Geisler <mg@lazybytes.net>
parents: 7468
diff changeset
    10
    hg commit -d "${2} 0" -m $1
7468
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
    11
}
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
    12
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
    13
hg init a
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
    14
cd a
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
    15
addcommit "c1" 0
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
    16
addcommit "c2" 1
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
    17
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
    18
addcommit "l1" 2
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
    19
addcommit "l2" 3
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
    20
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
    21
hg update -C 1
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
    22
hg branch 'notdefault'
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
    23
addcommit "r1" 4
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
    24
hg glog --template '{rev}:{desc}:{branches}\n'
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
    25
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
    26
echo
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
    27
echo '% Rebase a branch while preserving the branch name'
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
    28
hg update -C 3
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
    29
hg rebase -b 4 -d 3 --keepbranches 2>&1 | sed 's/\(saving bundle to \).*/\1/'
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
    30
hg glog --template '{rev}:{desc}:{branches}\n'
8266
609ce91670d0 rebase: fix bug where --keepbranches could leave wrong branch in dirstate
Patrick Mezard <pmezard@gmail.com>
parents: 7468
diff changeset
    31
echo '% dirstate branch should be "notdefault"'
609ce91670d0 rebase: fix bug where --keepbranches could leave wrong branch in dirstate
Patrick Mezard <pmezard@gmail.com>
parents: 7468
diff changeset
    32
hg branch