annotate tests/test-rebase-keep-branch @ 7654:816b708f23af

store all heads of a branch in the branch cache All heads of branches will be stored in a new cache file 'branchheads.cache' within the .hg directory. The old 'branch.cache' file from older versions will be ignored. The new cache contents are formatted line-by-line as '{node} {branchtag}\n'. This is the same as the previous format. Now, every head is recorded in an oldest -> tipmost order. The localrepo.branchheads function is reworked to use the data from the cache.
author John Mulligan <phlogistonjohn@asynchrono.us>
date Wed, 14 Jan 2009 21:47:38 -0500
parents 3e5db4228f8f
children 8766fee6f225 609ce91670d0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
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
3e5db4228f8f rebase: add support to keep branch names
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
10 hg commit -d "${2} 0" -u test -m $1
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'