tests/test-branches.t
author Yuya Nishihara <yuya@tcha.org>
Thu, 23 Nov 2017 22:04:53 +0900
branchstable
changeset 35169 898c6f812a51
parent 34661 eb586ed5d8ce
child 37336 5d10f41ddcc4
permissions -rw-r--r--
fancyopts: add early-options parser compatible with getopt() The next patch will add a flag for strict parsing of early options, where we'll have to parse all early options at once instead of processing them one-by-one by dispatch._earlygetopt(). That's why I decided to hook fancyopts(). All dispatch._early*opt() functions is planned to be replaced with this function. But in this stable series, only the strict mode will be handled by fancyopts.earlygetopt().
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
     1
  $ hg init a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
     2
  $ cd a
31454
a5bad127128d branchmap: handle nullrev in setcachedata
Durham Goode <durham@fb.com>
parents: 31173
diff changeset
     3
a5bad127128d branchmap: handle nullrev in setcachedata
Durham Goode <durham@fb.com>
parents: 31173
diff changeset
     4
Verify checking branch of nullrev before the cache is created doesnt crash
a5bad127128d branchmap: handle nullrev in setcachedata
Durham Goode <durham@fb.com>
parents: 31173
diff changeset
     5
  $ hg log -r 'branch(.)' -T '{branch}\n'
a5bad127128d branchmap: handle nullrev in setcachedata
Durham Goode <durham@fb.com>
parents: 31173
diff changeset
     6
a5bad127128d branchmap: handle nullrev in setcachedata
Durham Goode <durham@fb.com>
parents: 31173
diff changeset
     7
Basic test
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
     8
  $ echo 'root' >root
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
     9
  $ hg add root
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    10
  $ hg commit -d '0 0' -m "Adding root node"
4675
6858a7477a5e Change branches to sort 'active' branches first, and add an option to show only active branches.
Eric Hopper <hopper@omnifarious.org>
parents:
diff changeset
    11
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    12
  $ echo 'a' >a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    13
  $ hg add a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    14
  $ hg branch a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    15
  marked working directory as branch a
15615
41885892796e branch: warn on branching
Matt Mackall <mpm@selenic.com>
parents: 14162
diff changeset
    16
  (branches are permanent and global, did you want a bookmark?)
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    17
  $ hg commit -d '1 0' -m "Adding a branch"
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    18
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    19
  $ hg branch q
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    20
  marked working directory as branch q
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    21
  $ echo 'aa' >a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    22
  $ hg branch -C
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    23
  reset working directory to branch a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    24
  $ hg commit -d '2 0' -m "Adding to a branch"
4675
6858a7477a5e Change branches to sort 'active' branches first, and add an option to show only active branches.
Eric Hopper <hopper@omnifarious.org>
parents:
diff changeset
    25
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    26
  $ hg update -C 0
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    27
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    28
  $ echo 'b' >b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    29
  $ hg add b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    30
  $ hg branch b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    31
  marked working directory as branch b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    32
  $ hg commit -d '2 0' -m "Adding b branch"
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    33
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    34
  $ echo 'bh1' >bh1
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    35
  $ hg add bh1
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    36
  $ hg commit -d '3 0' -m "Adding b branch head 1"
4675
6858a7477a5e Change branches to sort 'active' branches first, and add an option to show only active branches.
Eric Hopper <hopper@omnifarious.org>
parents:
diff changeset
    37
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    38
  $ hg update -C 2
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    39
  1 files updated, 0 files merged, 2 files removed, 0 files unresolved
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    40
  $ echo 'bh2' >bh2
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    41
  $ hg add bh2
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    42
  $ hg commit -d '4 0' -m "Adding b branch head 2"
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    43
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    44
  $ echo 'c' >c
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    45
  $ hg add c
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    46
  $ hg branch c
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    47
  marked working directory as branch c
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    48
  $ hg commit -d '5 0' -m "Adding c branch"
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    49
17821
361ab1e2086f scmutil: add bad character checking to checknewlabel
Kevin Bullock <kbullock@ringworld.org>
parents: 16913
diff changeset
    50
reserved names
361ab1e2086f scmutil: add bad character checking to checknewlabel
Kevin Bullock <kbullock@ringworld.org>
parents: 16913
diff changeset
    51
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    52
  $ hg branch tip
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    53
  abort: the name 'tip' is reserved
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 11969
diff changeset
    54
  [255]
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    55
  $ hg branch null
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    56
  abort: the name 'null' is reserved
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 11969
diff changeset
    57
  [255]
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    58
  $ hg branch .
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
    59
  abort: the name '.' is reserved
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 11969
diff changeset
    60
  [255]
7006
92d44ec32430 branch: added more support for named branches
Sune Foldager <cryo@cyanite.org>
parents: 6815
diff changeset
    61
17821
361ab1e2086f scmutil: add bad character checking to checknewlabel
Kevin Bullock <kbullock@ringworld.org>
parents: 16913
diff changeset
    62
invalid characters
361ab1e2086f scmutil: add bad character checking to checknewlabel
Kevin Bullock <kbullock@ringworld.org>
parents: 16913
diff changeset
    63
361ab1e2086f scmutil: add bad character checking to checknewlabel
Kevin Bullock <kbullock@ringworld.org>
parents: 16913
diff changeset
    64
  $ hg branch 'foo:bar'
17850
71c1513fd560 scmutil: generalize message to make it more i18n-friendly
Wagner Bruna <wbruna@yahoo.com>
parents: 17821
diff changeset
    65
  abort: ':' cannot be used in a name
17821
361ab1e2086f scmutil: add bad character checking to checknewlabel
Kevin Bullock <kbullock@ringworld.org>
parents: 16913
diff changeset
    66
  [255]
361ab1e2086f scmutil: add bad character checking to checknewlabel
Kevin Bullock <kbullock@ringworld.org>
parents: 16913
diff changeset
    67
361ab1e2086f scmutil: add bad character checking to checknewlabel
Kevin Bullock <kbullock@ringworld.org>
parents: 16913
diff changeset
    68
  $ hg branch 'foo
361ab1e2086f scmutil: add bad character checking to checknewlabel
Kevin Bullock <kbullock@ringworld.org>
parents: 16913
diff changeset
    69
  > bar'
17850
71c1513fd560 scmutil: generalize message to make it more i18n-friendly
Wagner Bruna <wbruna@yahoo.com>
parents: 17821
diff changeset
    70
  abort: '\n' cannot be used in a name
17821
361ab1e2086f scmutil: add bad character checking to checknewlabel
Kevin Bullock <kbullock@ringworld.org>
parents: 16913
diff changeset
    71
  [255]
361ab1e2086f scmutil: add bad character checking to checknewlabel
Kevin Bullock <kbullock@ringworld.org>
parents: 16913
diff changeset
    72
19180
12dbdd348bb0 branch: strip whitespace before testing known branch name
Yuya Nishihara <yuya@tcha.org>
parents: 18955
diff changeset
    73
trailing or leading spaces should be stripped before testing duplicates
12dbdd348bb0 branch: strip whitespace before testing known branch name
Yuya Nishihara <yuya@tcha.org>
parents: 18955
diff changeset
    74
12dbdd348bb0 branch: strip whitespace before testing known branch name
Yuya Nishihara <yuya@tcha.org>
parents: 18955
diff changeset
    75
  $ hg branch 'b '
12dbdd348bb0 branch: strip whitespace before testing known branch name
Yuya Nishihara <yuya@tcha.org>
parents: 18955
diff changeset
    76
  abort: a branch of the same name already exists
12dbdd348bb0 branch: strip whitespace before testing known branch name
Yuya Nishihara <yuya@tcha.org>
parents: 18955
diff changeset
    77
  (use 'hg update' to switch to it)
12dbdd348bb0 branch: strip whitespace before testing known branch name
Yuya Nishihara <yuya@tcha.org>
parents: 18955
diff changeset
    78
  [255]
12dbdd348bb0 branch: strip whitespace before testing known branch name
Yuya Nishihara <yuya@tcha.org>
parents: 18955
diff changeset
    79
12dbdd348bb0 branch: strip whitespace before testing known branch name
Yuya Nishihara <yuya@tcha.org>
parents: 18955
diff changeset
    80
  $ hg branch ' b'
12dbdd348bb0 branch: strip whitespace before testing known branch name
Yuya Nishihara <yuya@tcha.org>
parents: 18955
diff changeset
    81
  abort: a branch of the same name already exists
12dbdd348bb0 branch: strip whitespace before testing known branch name
Yuya Nishihara <yuya@tcha.org>
parents: 18955
diff changeset
    82
  (use 'hg update' to switch to it)
12dbdd348bb0 branch: strip whitespace before testing known branch name
Yuya Nishihara <yuya@tcha.org>
parents: 18955
diff changeset
    83
  [255]
12dbdd348bb0 branch: strip whitespace before testing known branch name
Yuya Nishihara <yuya@tcha.org>
parents: 18955
diff changeset
    84
17984
b74361cf7c0a update: allow update to existing branches with invalid names (issue3710)
Tim Henigan <tim.henigan@gmail.com>
parents: 17850
diff changeset
    85
verify update will accept invalid legacy branch names
b74361cf7c0a update: allow update to existing branches with invalid names (issue3710)
Tim Henigan <tim.henigan@gmail.com>
parents: 17850
diff changeset
    86
b74361cf7c0a update: allow update to existing branches with invalid names (issue3710)
Tim Henigan <tim.henigan@gmail.com>
parents: 17850
diff changeset
    87
  $ hg init test-invalid-branch-name
b74361cf7c0a update: allow update to existing branches with invalid names (issue3710)
Tim Henigan <tim.henigan@gmail.com>
parents: 17850
diff changeset
    88
  $ cd test-invalid-branch-name
b74361cf7c0a update: allow update to existing branches with invalid names (issue3710)
Tim Henigan <tim.henigan@gmail.com>
parents: 17850
diff changeset
    89
  $ hg pull -u "$TESTDIR"/bundles/test-invalid-branch-name.hg
b74361cf7c0a update: allow update to existing branches with invalid names (issue3710)
Tim Henigan <tim.henigan@gmail.com>
parents: 17850
diff changeset
    90
  pulling from *test-invalid-branch-name.hg (glob)
b74361cf7c0a update: allow update to existing branches with invalid names (issue3710)
Tim Henigan <tim.henigan@gmail.com>
parents: 17850
diff changeset
    91
  requesting all changes
b74361cf7c0a update: allow update to existing branches with invalid names (issue3710)
Tim Henigan <tim.henigan@gmail.com>
parents: 17850
diff changeset
    92
  adding changesets
b74361cf7c0a update: allow update to existing branches with invalid names (issue3710)
Tim Henigan <tim.henigan@gmail.com>
parents: 17850
diff changeset
    93
  adding manifests
b74361cf7c0a update: allow update to existing branches with invalid names (issue3710)
Tim Henigan <tim.henigan@gmail.com>
parents: 17850
diff changeset
    94
  adding file changes
b74361cf7c0a update: allow update to existing branches with invalid names (issue3710)
Tim Henigan <tim.henigan@gmail.com>
parents: 17850
diff changeset
    95
  added 3 changesets with 3 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34074
diff changeset
    96
  new changesets f0e4c7f04036:33c2ceb9310b
17984
b74361cf7c0a update: allow update to existing branches with invalid names (issue3710)
Tim Henigan <tim.henigan@gmail.com>
parents: 17850
diff changeset
    97
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
b74361cf7c0a update: allow update to existing branches with invalid names (issue3710)
Tim Henigan <tim.henigan@gmail.com>
parents: 17850
diff changeset
    98
b74361cf7c0a update: allow update to existing branches with invalid names (issue3710)
Tim Henigan <tim.henigan@gmail.com>
parents: 17850
diff changeset
    99
  $ hg update '"colon:test"'
b74361cf7c0a update: allow update to existing branches with invalid names (issue3710)
Tim Henigan <tim.henigan@gmail.com>
parents: 17850
diff changeset
   100
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
b74361cf7c0a update: allow update to existing branches with invalid names (issue3710)
Tim Henigan <tim.henigan@gmail.com>
parents: 17850
diff changeset
   101
  $ cd ..
b74361cf7c0a update: allow update to existing branches with invalid names (issue3710)
Tim Henigan <tim.henigan@gmail.com>
parents: 17850
diff changeset
   102
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   103
  $ echo 'd' >d
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   104
  $ hg add d
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   105
  $ hg branch 'a branch name much longer than the default justification used by branches'
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   106
  marked working directory as branch a branch name much longer than the default justification used by branches
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   107
  $ hg commit -d '6 0' -m "Adding d branch"
4675
6858a7477a5e Change branches to sort 'active' branches first, and add an option to show only active branches.
Eric Hopper <hopper@omnifarious.org>
parents:
diff changeset
   108
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   109
  $ hg branches
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   110
  a branch name much longer than the default justification used by branches 7:10ff5895aa57
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   111
  b                              4:aee39cd168d0
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   112
  c                              6:589736a22561 (inactive)
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   113
  a                              5:d8cbc61dbaa6 (inactive)
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   114
  default                        0:19709c5a4e75 (inactive)
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   115
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   116
-------
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   117
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   118
  $ hg branches -a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   119
  a branch name much longer than the default justification used by branches 7:10ff5895aa57
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   120
  b                              4:aee39cd168d0
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   121
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   122
--- Branch a
4675
6858a7477a5e Change branches to sort 'active' branches first, and add an option to show only active branches.
Eric Hopper <hopper@omnifarious.org>
parents:
diff changeset
   123
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   124
  $ hg log -b a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   125
  changeset:   5:d8cbc61dbaa6
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   126
  branch:      a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   127
  parent:      2:881fe2b92ad0
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   128
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   129
  date:        Thu Jan 01 00:00:04 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   130
  summary:     Adding b branch head 2
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   131
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   132
  changeset:   2:881fe2b92ad0
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   133
  branch:      a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   134
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   135
  date:        Thu Jan 01 00:00:02 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   136
  summary:     Adding to a branch
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   137
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   138
  changeset:   1:dd6b440dd85a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   139
  branch:      a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   140
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   141
  date:        Thu Jan 01 00:00:01 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   142
  summary:     Adding a branch
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   143
  
4675
6858a7477a5e Change branches to sort 'active' branches first, and add an option to show only active branches.
Eric Hopper <hopper@omnifarious.org>
parents:
diff changeset
   144
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   145
---- Branch b
4675
6858a7477a5e Change branches to sort 'active' branches first, and add an option to show only active branches.
Eric Hopper <hopper@omnifarious.org>
parents:
diff changeset
   146
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   147
  $ hg log -b b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   148
  changeset:   4:aee39cd168d0
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   149
  branch:      b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   150
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   151
  date:        Thu Jan 01 00:00:03 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   152
  summary:     Adding b branch head 1
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   153
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   154
  changeset:   3:ac22033332d1
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   155
  branch:      b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   156
  parent:      0:19709c5a4e75
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   157
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   158
  date:        Thu Jan 01 00:00:02 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   159
  summary:     Adding b branch
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   160
  
10417
58e040c51231 branch: avoid using reserved tag names
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 8991
diff changeset
   161
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   162
---- going to test branch closing
6631
a2b13cac0922 Active branches fix (issue1104)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 6067
diff changeset
   163
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   164
  $ hg branches
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   165
  a branch name much longer than the default justification used by branches 7:10ff5895aa57
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   166
  b                              4:aee39cd168d0
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   167
  c                              6:589736a22561 (inactive)
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   168
  a                              5:d8cbc61dbaa6 (inactive)
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   169
  default                        0:19709c5a4e75 (inactive)
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   170
  $ hg up -C b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   171
  2 files updated, 0 files merged, 4 files removed, 0 files unresolved
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   172
  $ echo 'xxx1' >> b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   173
  $ hg commit -d '7 0' -m 'adding cset to branch b'
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   174
  $ hg up -C aee39cd168d0
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   175
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   176
  $ echo 'xxx2' >> b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   177
  $ hg commit -d '8 0' -m 'adding head to branch b'
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   178
  created new head
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   179
  $ echo 'xxx3' >> b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   180
  $ hg commit -d '9 0' -m 'adding another cset to branch b'
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   181
  $ hg branches
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   182
  b                             10:bfbe841b666e
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   183
  a branch name much longer than the default justification used by branches 7:10ff5895aa57
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   184
  c                              6:589736a22561 (inactive)
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   185
  a                              5:d8cbc61dbaa6 (inactive)
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   186
  default                        0:19709c5a4e75 (inactive)
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   187
  $ hg heads --closed
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   188
  changeset:   10:bfbe841b666e
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   189
  branch:      b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   190
  tag:         tip
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   191
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   192
  date:        Thu Jan 01 00:00:09 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   193
  summary:     adding another cset to branch b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   194
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   195
  changeset:   8:eebb944467c9
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   196
  branch:      b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   197
  parent:      4:aee39cd168d0
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   198
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   199
  date:        Thu Jan 01 00:00:07 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   200
  summary:     adding cset to branch b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   201
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   202
  changeset:   7:10ff5895aa57
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   203
  branch:      a branch name much longer than the default justification used by branches
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   204
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   205
  date:        Thu Jan 01 00:00:06 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   206
  summary:     Adding d branch
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   207
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   208
  changeset:   6:589736a22561
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   209
  branch:      c
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   210
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   211
  date:        Thu Jan 01 00:00:05 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   212
  summary:     Adding c branch
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   213
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   214
  changeset:   5:d8cbc61dbaa6
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   215
  branch:      a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   216
  parent:      2:881fe2b92ad0
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   217
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   218
  date:        Thu Jan 01 00:00:04 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   219
  summary:     Adding b branch head 2
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   220
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   221
  changeset:   0:19709c5a4e75
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   222
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   223
  date:        Thu Jan 01 00:00:00 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   224
  summary:     Adding root node
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   225
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   226
  $ hg heads
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   227
  changeset:   10:bfbe841b666e
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   228
  branch:      b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   229
  tag:         tip
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   230
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   231
  date:        Thu Jan 01 00:00:09 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   232
  summary:     adding another cset to branch b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   233
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   234
  changeset:   8:eebb944467c9
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   235
  branch:      b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   236
  parent:      4:aee39cd168d0
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   237
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   238
  date:        Thu Jan 01 00:00:07 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   239
  summary:     adding cset to branch b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   240
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   241
  changeset:   7:10ff5895aa57
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   242
  branch:      a branch name much longer than the default justification used by branches
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   243
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   244
  date:        Thu Jan 01 00:00:06 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   245
  summary:     Adding d branch
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   246
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   247
  changeset:   6:589736a22561
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   248
  branch:      c
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   249
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   250
  date:        Thu Jan 01 00:00:05 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   251
  summary:     Adding c branch
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   252
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   253
  changeset:   5:d8cbc61dbaa6
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   254
  branch:      a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   255
  parent:      2:881fe2b92ad0
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   256
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   257
  date:        Thu Jan 01 00:00:04 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   258
  summary:     Adding b branch head 2
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   259
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   260
  changeset:   0:19709c5a4e75
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   261
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   262
  date:        Thu Jan 01 00:00:00 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   263
  summary:     Adding root node
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   264
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   265
  $ hg commit -d '9 0' --close-branch -m 'prune bad branch'
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   266
  $ hg branches -a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   267
  b                              8:eebb944467c9
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   268
  a branch name much longer than the default justification used by branches 7:10ff5895aa57
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   269
  $ hg up -C b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   270
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   271
  $ hg commit -d '9 0' --close-branch -m 'close this part branch too'
19305
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 19180
diff changeset
   272
  $ hg commit -d '9 0' --close-branch -m 're-closing this branch'
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 19180
diff changeset
   273
  abort: can only close branch heads
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 19180
diff changeset
   274
  [255]
6067
57c1a7052982 Option to log to only show changesets within a specified branch.
Dustin Sallings <dustin@spy.net>
parents: 4675
diff changeset
   275
18955
f3245f22771c commit: allow closing "non-head" changesets
Mads Kiilerich <madski@unity3d.com>
parents: 17984
diff changeset
   276
  $ hg log -r tip --debug
19305
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 19180
diff changeset
   277
  changeset:   12:e3d49c0575d8fc2cb1cd6859c747c14f5f6d499f
18955
f3245f22771c commit: allow closing "non-head" changesets
Mads Kiilerich <madski@unity3d.com>
parents: 17984
diff changeset
   278
  branch:      b
f3245f22771c commit: allow closing "non-head" changesets
Mads Kiilerich <madski@unity3d.com>
parents: 17984
diff changeset
   279
  tag:         tip
f3245f22771c commit: allow closing "non-head" changesets
Mads Kiilerich <madski@unity3d.com>
parents: 17984
diff changeset
   280
  phase:       draft
19305
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 19180
diff changeset
   281
  parent:      8:eebb944467c9fb9651ed232aeaf31b3c0a7fc6c1
18955
f3245f22771c commit: allow closing "non-head" changesets
Mads Kiilerich <madski@unity3d.com>
parents: 17984
diff changeset
   282
  parent:      -1:0000000000000000000000000000000000000000
f3245f22771c commit: allow closing "non-head" changesets
Mads Kiilerich <madski@unity3d.com>
parents: 17984
diff changeset
   283
  manifest:    8:6f9ed32d2b310e391a4f107d5f0f071df785bfee
f3245f22771c commit: allow closing "non-head" changesets
Mads Kiilerich <madski@unity3d.com>
parents: 17984
diff changeset
   284
  user:        test
f3245f22771c commit: allow closing "non-head" changesets
Mads Kiilerich <madski@unity3d.com>
parents: 17984
diff changeset
   285
  date:        Thu Jan 01 00:00:09 1970 +0000
f3245f22771c commit: allow closing "non-head" changesets
Mads Kiilerich <madski@unity3d.com>
parents: 17984
diff changeset
   286
  extra:       branch=b
f3245f22771c commit: allow closing "non-head" changesets
Mads Kiilerich <madski@unity3d.com>
parents: 17984
diff changeset
   287
  extra:       close=1
f3245f22771c commit: allow closing "non-head" changesets
Mads Kiilerich <madski@unity3d.com>
parents: 17984
diff changeset
   288
  description:
19305
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 19180
diff changeset
   289
  close this part branch too
18955
f3245f22771c commit: allow closing "non-head" changesets
Mads Kiilerich <madski@unity3d.com>
parents: 17984
diff changeset
   290
  
f3245f22771c commit: allow closing "non-head" changesets
Mads Kiilerich <madski@unity3d.com>
parents: 17984
diff changeset
   291
  
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   292
--- b branch should be inactive
7657
405cacb06745 branch closing: add test for branch closing (and reopening)
John Mulligan <phlogistonjohn@asynchrono.us>
parents: 7006
diff changeset
   293
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   294
  $ hg branches
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   295
  a branch name much longer than the default justification used by branches 7:10ff5895aa57
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   296
  c                              6:589736a22561 (inactive)
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   297
  a                              5:d8cbc61dbaa6 (inactive)
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   298
  default                        0:19709c5a4e75 (inactive)
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   299
  $ hg branches -c
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   300
  a branch name much longer than the default justification used by branches 7:10ff5895aa57
14162
301725c3df9a localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 13987
diff changeset
   301
  b                             12:e3d49c0575d8 (closed)
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   302
  c                              6:589736a22561 (inactive)
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   303
  a                              5:d8cbc61dbaa6 (inactive)
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   304
  default                        0:19709c5a4e75 (inactive)
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   305
  $ hg branches -a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   306
  a branch name much longer than the default justification used by branches 7:10ff5895aa57
16612
726dd0fc7cfe branches: quiet option observes other parameters
Travis Herrick <tthetoad@gmail.com>
parents: 15615
diff changeset
   307
  $ hg branches -q
726dd0fc7cfe branches: quiet option observes other parameters
Travis Herrick <tthetoad@gmail.com>
parents: 15615
diff changeset
   308
  a branch name much longer than the default justification used by branches
726dd0fc7cfe branches: quiet option observes other parameters
Travis Herrick <tthetoad@gmail.com>
parents: 15615
diff changeset
   309
  c
726dd0fc7cfe branches: quiet option observes other parameters
Travis Herrick <tthetoad@gmail.com>
parents: 15615
diff changeset
   310
  a
726dd0fc7cfe branches: quiet option observes other parameters
Travis Herrick <tthetoad@gmail.com>
parents: 15615
diff changeset
   311
  default
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   312
  $ hg heads b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   313
  no open branch heads found on branches b
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 11969
diff changeset
   314
  [1]
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   315
  $ hg heads --closed b
14162
301725c3df9a localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 13987
diff changeset
   316
  changeset:   12:e3d49c0575d8
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   317
  branch:      b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   318
  tag:         tip
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   319
  parent:      8:eebb944467c9
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   320
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   321
  date:        Thu Jan 01 00:00:09 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   322
  summary:     close this part branch too
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   323
  
14162
301725c3df9a localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 13987
diff changeset
   324
  changeset:   11:d3f163457ebf
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   325
  branch:      b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   326
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   327
  date:        Thu Jan 01 00:00:09 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   328
  summary:     prune bad branch
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   329
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   330
  $ echo 'xxx4' >> b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   331
  $ hg commit -d '9 0' -m 'reopen branch with a change'
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   332
  reopening closed branch head 12
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   333
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   334
--- branch b is back in action
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   335
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   336
  $ hg branches -a
14162
301725c3df9a localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 13987
diff changeset
   337
  b                             13:e23b5505d1ad
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   338
  a branch name much longer than the default justification used by branches 7:10ff5895aa57
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   339
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   340
---- test heads listings
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   341
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   342
  $ hg heads
14162
301725c3df9a localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 13987
diff changeset
   343
  changeset:   13:e23b5505d1ad
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   344
  branch:      b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   345
  tag:         tip
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   346
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   347
  date:        Thu Jan 01 00:00:09 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   348
  summary:     reopen branch with a change
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   349
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   350
  changeset:   7:10ff5895aa57
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   351
  branch:      a branch name much longer than the default justification used by branches
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   352
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   353
  date:        Thu Jan 01 00:00:06 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   354
  summary:     Adding d branch
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   355
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   356
  changeset:   6:589736a22561
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   357
  branch:      c
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   358
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   359
  date:        Thu Jan 01 00:00:05 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   360
  summary:     Adding c branch
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   361
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   362
  changeset:   5:d8cbc61dbaa6
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   363
  branch:      a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   364
  parent:      2:881fe2b92ad0
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   365
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   366
  date:        Thu Jan 01 00:00:04 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   367
  summary:     Adding b branch head 2
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   368
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   369
  changeset:   0:19709c5a4e75
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   370
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   371
  date:        Thu Jan 01 00:00:00 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   372
  summary:     Adding root node
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   373
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   374
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   375
branch default
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   376
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   377
  $ hg heads default
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   378
  changeset:   0:19709c5a4e75
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   379
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   380
  date:        Thu Jan 01 00:00:00 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   381
  summary:     Adding root node
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   382
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   383
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   384
branch a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   385
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   386
  $ hg heads a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   387
  changeset:   5:d8cbc61dbaa6
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   388
  branch:      a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   389
  parent:      2:881fe2b92ad0
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   390
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   391
  date:        Thu Jan 01 00:00:04 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   392
  summary:     Adding b branch head 2
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   393
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   394
  $ hg heads --active a
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   395
  no open branch heads found on branches a
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 11969
diff changeset
   396
  [1]
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   397
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   398
branch b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   399
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   400
  $ hg heads b
14162
301725c3df9a localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 13987
diff changeset
   401
  changeset:   13:e23b5505d1ad
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   402
  branch:      b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   403
  tag:         tip
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   404
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   405
  date:        Thu Jan 01 00:00:09 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   406
  summary:     reopen branch with a change
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   407
  
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   408
  $ hg heads --closed b
14162
301725c3df9a localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 13987
diff changeset
   409
  changeset:   13:e23b5505d1ad
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   410
  branch:      b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   411
  tag:         tip
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   412
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   413
  date:        Thu Jan 01 00:00:09 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   414
  summary:     reopen branch with a change
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   415
  
14162
301725c3df9a localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 13987
diff changeset
   416
  changeset:   11:d3f163457ebf
11868
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   417
  branch:      b
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   418
  user:        test
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   419
  date:        Thu Jan 01 00:00:09 1970 +0000
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   420
  summary:     prune bad branch
062052b0d737 tests: unify test-branches
Martin Geisler <mg@lazybytes.net>
parents: 10417
diff changeset
   421
  
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   422
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   423
reclose branch
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   424
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   425
  $ hg up -C c
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   426
  3 files updated, 0 files merged, 2 files removed, 0 files unresolved
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   427
  $ hg commit -d '9 0' --close-branch -m 'reclosing this branch'
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   428
  $ hg branches
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   429
  b                             13:e23b5505d1ad
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   430
  a branch name much longer than the default justification used by branches 7:10ff5895aa57
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   431
  a                              5:d8cbc61dbaa6 (inactive)
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   432
  default                        0:19709c5a4e75 (inactive)
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   433
  $ hg branches --closed
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   434
  b                             13:e23b5505d1ad
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   435
  a branch name much longer than the default justification used by branches 7:10ff5895aa57
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   436
  c                             14:f894c25619d3 (closed)
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   437
  a                              5:d8cbc61dbaa6 (inactive)
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   438
  default                        0:19709c5a4e75 (inactive)
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   439
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   440
multihead branch
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   441
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   442
  $ hg up -C default
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   443
  0 files updated, 0 files merged, 3 files removed, 0 files unresolved
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   444
  $ hg branch m
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   445
  marked working directory as branch m
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   446
  $ touch m
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   447
  $ hg add m
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   448
  $ hg commit -d '10 0' -m 'multihead base'
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   449
  $ echo "m1" >m
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   450
  $ hg commit -d '10 0' -m 'head 1'
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   451
  $ hg up -C '.^'
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   452
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   453
  $ echo "m2" >m
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   454
  $ hg commit -d '10 0' -m 'head 2'
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   455
  created new head
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   456
  $ hg log -b m
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   457
  changeset:   17:df343b0df04f
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   458
  branch:      m
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   459
  tag:         tip
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   460
  parent:      15:f3447637f53e
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   461
  user:        test
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   462
  date:        Thu Jan 01 00:00:10 1970 +0000
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   463
  summary:     head 2
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   464
  
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   465
  changeset:   16:a58ca5d3bdf3
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   466
  branch:      m
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   467
  user:        test
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   468
  date:        Thu Jan 01 00:00:10 1970 +0000
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   469
  summary:     head 1
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   470
  
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   471
  changeset:   15:f3447637f53e
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   472
  branch:      m
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   473
  parent:      0:19709c5a4e75
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   474
  user:        test
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   475
  date:        Thu Jan 01 00:00:10 1970 +0000
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   476
  summary:     multihead base
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   477
  
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   478
  $ hg heads --topo m
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   479
  changeset:   17:df343b0df04f
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   480
  branch:      m
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   481
  tag:         tip
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   482
  parent:      15:f3447637f53e
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   483
  user:        test
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   484
  date:        Thu Jan 01 00:00:10 1970 +0000
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   485
  summary:     head 2
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   486
  
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   487
  changeset:   16:a58ca5d3bdf3
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   488
  branch:      m
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   489
  user:        test
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   490
  date:        Thu Jan 01 00:00:10 1970 +0000
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   491
  summary:     head 1
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   492
  
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   493
  $ hg branches
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   494
  m                             17:df343b0df04f
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   495
  b                             13:e23b5505d1ad
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   496
  a branch name much longer than the default justification used by branches 7:10ff5895aa57
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   497
  a                              5:d8cbc61dbaa6 (inactive)
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   498
  default                        0:19709c5a4e75 (inactive)
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   499
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   500
partially merge multihead branch
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   501
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   502
  $ hg up -C default
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   503
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   504
  $ hg branch md
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   505
  marked working directory as branch md
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   506
  $ hg merge m
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   507
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   508
  (branch merge, don't forget to commit)
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   509
  $ hg commit -d '11 0' -m 'merge head 2'
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   510
  $ hg heads --topo m
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   511
  changeset:   16:a58ca5d3bdf3
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   512
  branch:      m
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   513
  user:        test
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   514
  date:        Thu Jan 01 00:00:10 1970 +0000
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   515
  summary:     head 1
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   516
  
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   517
  $ hg branches
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   518
  md                            18:c914c99f1fbb
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   519
  m                             17:df343b0df04f
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   520
  b                             13:e23b5505d1ad
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   521
  a branch name much longer than the default justification used by branches 7:10ff5895aa57
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   522
  a                              5:d8cbc61dbaa6 (inactive)
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   523
  default                        0:19709c5a4e75 (inactive)
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   524
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   525
partially close multihead branch
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   526
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   527
  $ hg up -C a58ca5d3bdf3
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   528
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   529
  $ hg commit -d '12 0' -m 'close head 1' --close-branch
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   530
  $ hg heads --topo m
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   531
  changeset:   19:cd21a80baa3d
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   532
  branch:      m
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   533
  tag:         tip
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   534
  parent:      16:a58ca5d3bdf3
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   535
  user:        test
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   536
  date:        Thu Jan 01 00:00:12 1970 +0000
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   537
  summary:     close head 1
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   538
  
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   539
  $ hg branches
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   540
  md                            18:c914c99f1fbb
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   541
  b                             13:e23b5505d1ad
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   542
  a branch name much longer than the default justification used by branches 7:10ff5895aa57
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   543
  m                             17:df343b0df04f (inactive)
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   544
  a                              5:d8cbc61dbaa6 (inactive)
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   545
  default                        0:19709c5a4e75 (inactive)
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   546
11969
52ec5c813723 color: enable branches support
Jeremy Whitlock <jcscoobyrs@gmail.com>
parents: 11868
diff changeset
   547
default branch colors:
52ec5c813723 color: enable branches support
Jeremy Whitlock <jcscoobyrs@gmail.com>
parents: 11868
diff changeset
   548
23172
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22705
diff changeset
   549
  $ cat <<EOF >> $HGRCPATH
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22705
diff changeset
   550
  > [extensions]
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22705
diff changeset
   551
  > color =
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22705
diff changeset
   552
  > [color]
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22705
diff changeset
   553
  > mode = ansi
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22705
diff changeset
   554
  > EOF
11969
52ec5c813723 color: enable branches support
Jeremy Whitlock <jcscoobyrs@gmail.com>
parents: 11868
diff changeset
   555
52ec5c813723 color: enable branches support
Jeremy Whitlock <jcscoobyrs@gmail.com>
parents: 11868
diff changeset
   556
  $ hg up -C b
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   557
  2 files updated, 0 files merged, 1 files removed, 0 files unresolved
11969
52ec5c813723 color: enable branches support
Jeremy Whitlock <jcscoobyrs@gmail.com>
parents: 11868
diff changeset
   558
  $ hg branches --color=always
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   559
  \x1b[0;0mmd\x1b[0m\x1b[0;33m                            18:c914c99f1fbb\x1b[0m (esc)
22704
386339ffe421 branches: merge white space to format string
Yuya Nishihara <yuya@tcha.org>
parents: 22703
diff changeset
   560
  \x1b[0;32mb\x1b[0m\x1b[0;33m                             13:e23b5505d1ad\x1b[0m (esc)
386339ffe421 branches: merge white space to format string
Yuya Nishihara <yuya@tcha.org>
parents: 22703
diff changeset
   561
  \x1b[0;0ma branch name much longer than the default justification used by branches\x1b[0m\x1b[0;33m 7:10ff5895aa57\x1b[0m (esc)
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   562
  \x1b[0;0mm\x1b[0m\x1b[0;33m                             17:df343b0df04f\x1b[0m (inactive) (esc)
22704
386339ffe421 branches: merge white space to format string
Yuya Nishihara <yuya@tcha.org>
parents: 22703
diff changeset
   563
  \x1b[0;0ma\x1b[0m\x1b[0;33m                              5:d8cbc61dbaa6\x1b[0m (inactive) (esc)
386339ffe421 branches: merge white space to format string
Yuya Nishihara <yuya@tcha.org>
parents: 22703
diff changeset
   564
  \x1b[0;0mdefault\x1b[0m\x1b[0;33m                        0:19709c5a4e75\x1b[0m (inactive) (esc)
11969
52ec5c813723 color: enable branches support
Jeremy Whitlock <jcscoobyrs@gmail.com>
parents: 11868
diff changeset
   565
52ec5c813723 color: enable branches support
Jeremy Whitlock <jcscoobyrs@gmail.com>
parents: 11868
diff changeset
   566
default closed branch color:
52ec5c813723 color: enable branches support
Jeremy Whitlock <jcscoobyrs@gmail.com>
parents: 11868
diff changeset
   567
52ec5c813723 color: enable branches support
Jeremy Whitlock <jcscoobyrs@gmail.com>
parents: 11868
diff changeset
   568
  $ hg branches --color=always --closed
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   569
  \x1b[0;0mmd\x1b[0m\x1b[0;33m                            18:c914c99f1fbb\x1b[0m (esc)
22704
386339ffe421 branches: merge white space to format string
Yuya Nishihara <yuya@tcha.org>
parents: 22703
diff changeset
   570
  \x1b[0;32mb\x1b[0m\x1b[0;33m                             13:e23b5505d1ad\x1b[0m (esc)
386339ffe421 branches: merge white space to format string
Yuya Nishihara <yuya@tcha.org>
parents: 22703
diff changeset
   571
  \x1b[0;0ma branch name much longer than the default justification used by branches\x1b[0m\x1b[0;33m 7:10ff5895aa57\x1b[0m (esc)
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   572
  \x1b[0;0mm\x1b[0m\x1b[0;33m                             17:df343b0df04f\x1b[0m (inactive) (esc)
22704
386339ffe421 branches: merge white space to format string
Yuya Nishihara <yuya@tcha.org>
parents: 22703
diff changeset
   573
  \x1b[0;30;1mc\x1b[0m\x1b[0;33m                             14:f894c25619d3\x1b[0m (closed) (esc)
386339ffe421 branches: merge white space to format string
Yuya Nishihara <yuya@tcha.org>
parents: 22703
diff changeset
   574
  \x1b[0;0ma\x1b[0m\x1b[0;33m                              5:d8cbc61dbaa6\x1b[0m (inactive) (esc)
386339ffe421 branches: merge white space to format string
Yuya Nishihara <yuya@tcha.org>
parents: 22703
diff changeset
   575
  \x1b[0;0mdefault\x1b[0m\x1b[0;33m                        0:19709c5a4e75\x1b[0m (inactive) (esc)
11969
52ec5c813723 color: enable branches support
Jeremy Whitlock <jcscoobyrs@gmail.com>
parents: 11868
diff changeset
   576
23172
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22705
diff changeset
   577
  $ cat <<EOF >> $HGRCPATH
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22705
diff changeset
   578
  > [extensions]
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22705
diff changeset
   579
  > color =
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22705
diff changeset
   580
  > [color]
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22705
diff changeset
   581
  > branches.active = green
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22705
diff changeset
   582
  > branches.closed = blue
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22705
diff changeset
   583
  > branches.current = red
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22705
diff changeset
   584
  > branches.inactive = magenta
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22705
diff changeset
   585
  > log.changeset = cyan
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22705
diff changeset
   586
  > EOF
11969
52ec5c813723 color: enable branches support
Jeremy Whitlock <jcscoobyrs@gmail.com>
parents: 11868
diff changeset
   587
52ec5c813723 color: enable branches support
Jeremy Whitlock <jcscoobyrs@gmail.com>
parents: 11868
diff changeset
   588
custom branch colors:
52ec5c813723 color: enable branches support
Jeremy Whitlock <jcscoobyrs@gmail.com>
parents: 11868
diff changeset
   589
52ec5c813723 color: enable branches support
Jeremy Whitlock <jcscoobyrs@gmail.com>
parents: 11868
diff changeset
   590
  $ hg branches --color=always
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   591
  \x1b[0;32mmd\x1b[0m\x1b[0;36m                            18:c914c99f1fbb\x1b[0m (esc)
22704
386339ffe421 branches: merge white space to format string
Yuya Nishihara <yuya@tcha.org>
parents: 22703
diff changeset
   592
  \x1b[0;31mb\x1b[0m\x1b[0;36m                             13:e23b5505d1ad\x1b[0m (esc)
386339ffe421 branches: merge white space to format string
Yuya Nishihara <yuya@tcha.org>
parents: 22703
diff changeset
   593
  \x1b[0;32ma branch name much longer than the default justification used by branches\x1b[0m\x1b[0;36m 7:10ff5895aa57\x1b[0m (esc)
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   594
  \x1b[0;35mm\x1b[0m\x1b[0;36m                             17:df343b0df04f\x1b[0m (inactive) (esc)
22704
386339ffe421 branches: merge white space to format string
Yuya Nishihara <yuya@tcha.org>
parents: 22703
diff changeset
   595
  \x1b[0;35ma\x1b[0m\x1b[0;36m                              5:d8cbc61dbaa6\x1b[0m (inactive) (esc)
386339ffe421 branches: merge white space to format string
Yuya Nishihara <yuya@tcha.org>
parents: 22703
diff changeset
   596
  \x1b[0;35mdefault\x1b[0m\x1b[0;36m                        0:19709c5a4e75\x1b[0m (inactive) (esc)
11969
52ec5c813723 color: enable branches support
Jeremy Whitlock <jcscoobyrs@gmail.com>
parents: 11868
diff changeset
   597
52ec5c813723 color: enable branches support
Jeremy Whitlock <jcscoobyrs@gmail.com>
parents: 11868
diff changeset
   598
custom closed branch color:
52ec5c813723 color: enable branches support
Jeremy Whitlock <jcscoobyrs@gmail.com>
parents: 11868
diff changeset
   599
52ec5c813723 color: enable branches support
Jeremy Whitlock <jcscoobyrs@gmail.com>
parents: 11868
diff changeset
   600
  $ hg branches --color=always --closed
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   601
  \x1b[0;32mmd\x1b[0m\x1b[0;36m                            18:c914c99f1fbb\x1b[0m (esc)
22704
386339ffe421 branches: merge white space to format string
Yuya Nishihara <yuya@tcha.org>
parents: 22703
diff changeset
   602
  \x1b[0;31mb\x1b[0m\x1b[0;36m                             13:e23b5505d1ad\x1b[0m (esc)
386339ffe421 branches: merge white space to format string
Yuya Nishihara <yuya@tcha.org>
parents: 22703
diff changeset
   603
  \x1b[0;32ma branch name much longer than the default justification used by branches\x1b[0m\x1b[0;36m 7:10ff5895aa57\x1b[0m (esc)
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   604
  \x1b[0;35mm\x1b[0m\x1b[0;36m                             17:df343b0df04f\x1b[0m (inactive) (esc)
22704
386339ffe421 branches: merge white space to format string
Yuya Nishihara <yuya@tcha.org>
parents: 22703
diff changeset
   605
  \x1b[0;34mc\x1b[0m\x1b[0;36m                             14:f894c25619d3\x1b[0m (closed) (esc)
386339ffe421 branches: merge white space to format string
Yuya Nishihara <yuya@tcha.org>
parents: 22703
diff changeset
   606
  \x1b[0;35ma\x1b[0m\x1b[0;36m                              5:d8cbc61dbaa6\x1b[0m (inactive) (esc)
386339ffe421 branches: merge white space to format string
Yuya Nishihara <yuya@tcha.org>
parents: 22703
diff changeset
   607
  \x1b[0;35mdefault\x1b[0m\x1b[0;36m                        0:19709c5a4e75\x1b[0m (inactive) (esc)
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16612
diff changeset
   608
22703
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   609
template output:
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   610
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   611
  $ hg branches -Tjson --closed
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   612
  [
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   613
   {
22705
d4869b280cd6 branches: include active, closed and current flags in template output
Yuya Nishihara <yuya@tcha.org>
parents: 22704
diff changeset
   614
    "active": true,
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   615
    "branch": "md",
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   616
    "closed": false,
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   617
    "current": false,
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   618
    "node": "c914c99f1fbb2b1d785a0a939ed3f67275df18e9",
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   619
    "rev": 18
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   620
   },
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   621
   {
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   622
    "active": true,
22703
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   623
    "branch": "b",
22705
d4869b280cd6 branches: include active, closed and current flags in template output
Yuya Nishihara <yuya@tcha.org>
parents: 22704
diff changeset
   624
    "closed": false,
d4869b280cd6 branches: include active, closed and current flags in template output
Yuya Nishihara <yuya@tcha.org>
parents: 22704
diff changeset
   625
    "current": true,
22703
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   626
    "node": "e23b5505d1ad24aab6f84fd8c7cb8cd8e5e93be0",
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   627
    "rev": 13
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   628
   },
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   629
   {
22705
d4869b280cd6 branches: include active, closed and current flags in template output
Yuya Nishihara <yuya@tcha.org>
parents: 22704
diff changeset
   630
    "active": true,
22703
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   631
    "branch": "a branch name much longer than the default justification used by branches",
22705
d4869b280cd6 branches: include active, closed and current flags in template output
Yuya Nishihara <yuya@tcha.org>
parents: 22704
diff changeset
   632
    "closed": false,
d4869b280cd6 branches: include active, closed and current flags in template output
Yuya Nishihara <yuya@tcha.org>
parents: 22704
diff changeset
   633
    "current": false,
22703
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   634
    "node": "10ff5895aa5793bd378da574af8cec8ea408d831",
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   635
    "rev": 7
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   636
   },
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   637
   {
22705
d4869b280cd6 branches: include active, closed and current flags in template output
Yuya Nishihara <yuya@tcha.org>
parents: 22704
diff changeset
   638
    "active": false,
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   639
    "branch": "m",
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   640
    "closed": false,
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   641
    "current": false,
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   642
    "node": "df343b0df04feb2a946cd4b6e9520e552fef14ee",
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   643
    "rev": 17
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   644
   },
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   645
   {
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   646
    "active": false,
22703
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   647
    "branch": "c",
22705
d4869b280cd6 branches: include active, closed and current flags in template output
Yuya Nishihara <yuya@tcha.org>
parents: 22704
diff changeset
   648
    "closed": true,
d4869b280cd6 branches: include active, closed and current flags in template output
Yuya Nishihara <yuya@tcha.org>
parents: 22704
diff changeset
   649
    "current": false,
22703
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   650
    "node": "f894c25619d3f1484639d81be950e0a07bc6f1f6",
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   651
    "rev": 14
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   652
   },
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   653
   {
22705
d4869b280cd6 branches: include active, closed and current flags in template output
Yuya Nishihara <yuya@tcha.org>
parents: 22704
diff changeset
   654
    "active": false,
22703
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   655
    "branch": "a",
22705
d4869b280cd6 branches: include active, closed and current flags in template output
Yuya Nishihara <yuya@tcha.org>
parents: 22704
diff changeset
   656
    "closed": false,
d4869b280cd6 branches: include active, closed and current flags in template output
Yuya Nishihara <yuya@tcha.org>
parents: 22704
diff changeset
   657
    "current": false,
22703
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   658
    "node": "d8cbc61dbaa6dc817175d1e301eecb863f280832",
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   659
    "rev": 5
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   660
   },
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   661
   {
22705
d4869b280cd6 branches: include active, closed and current flags in template output
Yuya Nishihara <yuya@tcha.org>
parents: 22704
diff changeset
   662
    "active": false,
22703
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   663
    "branch": "default",
22705
d4869b280cd6 branches: include active, closed and current flags in template output
Yuya Nishihara <yuya@tcha.org>
parents: 22704
diff changeset
   664
    "closed": false,
d4869b280cd6 branches: include active, closed and current flags in template output
Yuya Nishihara <yuya@tcha.org>
parents: 22704
diff changeset
   665
    "current": false,
22703
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   666
    "node": "19709c5a4e75bf938f8e349aff97438539bb729e",
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   667
    "rev": 0
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   668
   }
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   669
  ]
bd6e95cb82b4 branches: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 19305
diff changeset
   670
29816
034412ca28c3 templater: fix if() to not evaluate False as bool('False')
Yuya Nishihara <yuya@tcha.org>
parents: 29744
diff changeset
   671
  $ hg branches --closed -T '{if(closed, "{branch}\n")}'
034412ca28c3 templater: fix if() to not evaluate False as bool('False')
Yuya Nishihara <yuya@tcha.org>
parents: 29744
diff changeset
   672
  c
23861
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   673
31173
052e4f1ffce9 branches: populate all template keywords in formatter
Yuya Nishihara <yuya@tcha.org>
parents: 29816
diff changeset
   674
  $ hg branches -T '{word(0, branch)}: {desc|firstline}\n'
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   675
  md: merge head 2
31173
052e4f1ffce9 branches: populate all template keywords in formatter
Yuya Nishihara <yuya@tcha.org>
parents: 29816
diff changeset
   676
  b: reopen branch with a change
052e4f1ffce9 branches: populate all template keywords in formatter
Yuya Nishihara <yuya@tcha.org>
parents: 29816
diff changeset
   677
  a: Adding d branch
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   678
  m: head 2
31173
052e4f1ffce9 branches: populate all template keywords in formatter
Yuya Nishihara <yuya@tcha.org>
parents: 29816
diff changeset
   679
  a: Adding b branch head 2
052e4f1ffce9 branches: populate all template keywords in formatter
Yuya Nishihara <yuya@tcha.org>
parents: 29816
diff changeset
   680
  default: Adding root node
052e4f1ffce9 branches: populate all template keywords in formatter
Yuya Nishihara <yuya@tcha.org>
parents: 29816
diff changeset
   681
32949
13eebc189ff3 formatter: add support for docheader and docfooter templates
Yuya Nishihara <yuya@tcha.org>
parents: 31454
diff changeset
   682
  $ cat <<'EOF' > "$TESTTMP/map-myjson"
13eebc189ff3 formatter: add support for docheader and docfooter templates
Yuya Nishihara <yuya@tcha.org>
parents: 31454
diff changeset
   683
  > docheader = '\{\n'
13eebc189ff3 formatter: add support for docheader and docfooter templates
Yuya Nishihara <yuya@tcha.org>
parents: 31454
diff changeset
   684
  > docfooter = '\n}\n'
32950
5100ce217dfa formatter: add support for separator template
Yuya Nishihara <yuya@tcha.org>
parents: 32949
diff changeset
   685
  > separator = ',\n'
5100ce217dfa formatter: add support for separator template
Yuya Nishihara <yuya@tcha.org>
parents: 32949
diff changeset
   686
  > branches = ' {dict(branch, node|short)|json}'
32949
13eebc189ff3 formatter: add support for docheader and docfooter templates
Yuya Nishihara <yuya@tcha.org>
parents: 31454
diff changeset
   687
  > EOF
13eebc189ff3 formatter: add support for docheader and docfooter templates
Yuya Nishihara <yuya@tcha.org>
parents: 31454
diff changeset
   688
  $ hg branches -T "$TESTTMP/map-myjson"
13eebc189ff3 formatter: add support for docheader and docfooter templates
Yuya Nishihara <yuya@tcha.org>
parents: 31454
diff changeset
   689
  {
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   690
   {"branch": "md", "node": "c914c99f1fbb"},
32949
13eebc189ff3 formatter: add support for docheader and docfooter templates
Yuya Nishihara <yuya@tcha.org>
parents: 31454
diff changeset
   691
   {"branch": "b", "node": "e23b5505d1ad"},
13eebc189ff3 formatter: add support for docheader and docfooter templates
Yuya Nishihara <yuya@tcha.org>
parents: 31454
diff changeset
   692
   {"branch": "a branch *", "node": "10ff5895aa57"}, (glob)
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   693
   {"branch": "m", "node": "df343b0df04f"},
32949
13eebc189ff3 formatter: add support for docheader and docfooter templates
Yuya Nishihara <yuya@tcha.org>
parents: 31454
diff changeset
   694
   {"branch": "a", "node": "d8cbc61dbaa6"},
13eebc189ff3 formatter: add support for docheader and docfooter templates
Yuya Nishihara <yuya@tcha.org>
parents: 31454
diff changeset
   695
   {"branch": "default", "node": "19709c5a4e75"}
13eebc189ff3 formatter: add support for docheader and docfooter templates
Yuya Nishihara <yuya@tcha.org>
parents: 31454
diff changeset
   696
  }
13eebc189ff3 formatter: add support for docheader and docfooter templates
Yuya Nishihara <yuya@tcha.org>
parents: 31454
diff changeset
   697
32952
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   698
  $ cat <<'EOF' >> .hg/hgrc
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   699
  > [templates]
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   700
  > myjson = ' {dict(branch, node|short)|json}'
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   701
  > myjson:docheader = '\{\n'
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   702
  > myjson:docfooter = '\n}\n'
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   703
  > myjson:separator = ',\n'
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   704
  > EOF
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   705
  $ hg branches -T myjson
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   706
  {
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   707
   {"branch": "md", "node": "c914c99f1fbb"},
32952
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   708
   {"branch": "b", "node": "e23b5505d1ad"},
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   709
   {"branch": "a branch *", "node": "10ff5895aa57"}, (glob)
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   710
   {"branch": "m", "node": "df343b0df04f"},
32952
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   711
   {"branch": "a", "node": "d8cbc61dbaa6"},
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   712
   {"branch": "default", "node": "19709c5a4e75"}
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   713
  }
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   714
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   715
  $ cat <<'EOF' >> .hg/hgrc
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   716
  > [templates]
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   717
  > :docheader = 'should not be selected as a docheader for literal templates\n'
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   718
  > EOF
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   719
  $ hg branches -T '{branch}\n'
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   720
  md
32952
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   721
  b
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   722
  a branch name much longer than the default justification used by branches
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   723
  m
32952
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   724
  a
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   725
  default
61b60b28c381 formatter: add support for parts map of [templates] section
Yuya Nishihara <yuya@tcha.org>
parents: 32950
diff changeset
   726
23861
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   727
Tests of revision branch name caching
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   728
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   729
We rev branch cache is updated automatically. In these tests we use a trick to
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   730
trigger rebuilds. We remove the branch head cache and run 'hg head' to cause a
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   731
rebuild that also will populate the rev branch cache.
23787
678f53865c68 revset: use localrepo revbranchcache for branch name filtering
Mads Kiilerich <madski@unity3d.com>
parents: 23172
diff changeset
   732
23861
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   733
revision branch cache is created when building the branch head cache
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   734
  $ rm -rf .hg/cache; hg head a -T '{rev}\n'
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   735
  5
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   736
  $ f --hexdump --size .hg/cache/rbc-*
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   737
  .hg/cache/rbc-names-v1: size=92
23861
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   738
  0000: 64 65 66 61 75 6c 74 00 61 00 62 00 63 00 61 20 |default.a.b.c.a |
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   739
  0010: 62 72 61 6e 63 68 20 6e 61 6d 65 20 6d 75 63 68 |branch name much|
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   740
  0020: 20 6c 6f 6e 67 65 72 20 74 68 61 6e 20 74 68 65 | longer than the|
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   741
  0030: 20 64 65 66 61 75 6c 74 20 6a 75 73 74 69 66 69 | default justifi|
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   742
  0040: 63 61 74 69 6f 6e 20 75 73 65 64 20 62 79 20 62 |cation used by b|
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   743
  0050: 72 61 6e 63 68 65 73 00 6d 00 6d 64             |ranches.m.md|
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   744
  .hg/cache/rbc-revs-v1: size=160
23861
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   745
  0000: 19 70 9c 5a 00 00 00 00 dd 6b 44 0d 00 00 00 01 |.p.Z.....kD.....|
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   746
  0010: 88 1f e2 b9 00 00 00 01 ac 22 03 33 00 00 00 02 |.........".3....|
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   747
  0020: ae e3 9c d1 00 00 00 02 d8 cb c6 1d 00 00 00 01 |................|
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   748
  0030: 58 97 36 a2 00 00 00 03 10 ff 58 95 00 00 00 04 |X.6.......X.....|
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   749
  0040: ee bb 94 44 00 00 00 02 5f 40 61 bb 00 00 00 02 |...D...._@a.....|
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   750
  0050: bf be 84 1b 00 00 00 02 d3 f1 63 45 80 00 00 02 |..........cE....|
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   751
  0060: e3 d4 9c 05 80 00 00 02 e2 3b 55 05 00 00 00 02 |.........;U.....|
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   752
  0070: f8 94 c2 56 80 00 00 03 f3 44 76 37 00 00 00 05 |...V.....Dv7....|
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   753
  0080: a5 8c a5 d3 00 00 00 05 df 34 3b 0d 00 00 00 05 |.........4;.....|
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   754
  0090: c9 14 c9 9f 00 00 00 06 cd 21 a8 0b 80 00 00 05 |.........!......|
24372
577f65cf1a57 revbranchcache: add test for when the cache is not writable
Durham Goode <durham@fb.com>
parents: 23862
diff changeset
   755
577f65cf1a57 revbranchcache: add test for when the cache is not writable
Durham Goode <durham@fb.com>
parents: 23862
diff changeset
   756
no errors when revbranchcache is not writable
577f65cf1a57 revbranchcache: add test for when the cache is not writable
Durham Goode <durham@fb.com>
parents: 23862
diff changeset
   757
577f65cf1a57 revbranchcache: add test for when the cache is not writable
Durham Goode <durham@fb.com>
parents: 23862
diff changeset
   758
  $ echo >> .hg/cache/rbc-revs-v1
28145
cfa0037448f4 tests: change branches test to work cross platform
timeless <timeless@mozdev.org>
parents: 25295
diff changeset
   759
  $ mv .hg/cache/rbc-revs-v1 .hg/cache/rbc-revs-v1_
cfa0037448f4 tests: change branches test to work cross platform
timeless <timeless@mozdev.org>
parents: 25295
diff changeset
   760
  $ mkdir .hg/cache/rbc-revs-v1
24372
577f65cf1a57 revbranchcache: add test for when the cache is not writable
Durham Goode <durham@fb.com>
parents: 23862
diff changeset
   761
  $ rm -f .hg/cache/branch* && hg head a -T '{rev}\n'
577f65cf1a57 revbranchcache: add test for when the cache is not writable
Durham Goode <durham@fb.com>
parents: 23862
diff changeset
   762
  5
28145
cfa0037448f4 tests: change branches test to work cross platform
timeless <timeless@mozdev.org>
parents: 25295
diff changeset
   763
  $ rmdir .hg/cache/rbc-revs-v1
cfa0037448f4 tests: change branches test to work cross platform
timeless <timeless@mozdev.org>
parents: 25295
diff changeset
   764
  $ mv .hg/cache/rbc-revs-v1_ .hg/cache/rbc-revs-v1
24372
577f65cf1a57 revbranchcache: add test for when the cache is not writable
Durham Goode <durham@fb.com>
parents: 23862
diff changeset
   765
29744
0d588332ad2c branchmap: acquires lock before writting the rev branch cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29615
diff changeset
   766
no errors when wlock cannot be acquired
0d588332ad2c branchmap: acquires lock before writting the rev branch cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29615
diff changeset
   767
0d588332ad2c branchmap: acquires lock before writting the rev branch cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29615
diff changeset
   768
#if unix-permissions
0d588332ad2c branchmap: acquires lock before writting the rev branch cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29615
diff changeset
   769
  $ mv .hg/cache/rbc-revs-v1 .hg/cache/rbc-revs-v1_
0d588332ad2c branchmap: acquires lock before writting the rev branch cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29615
diff changeset
   770
  $ rm -f .hg/cache/branch*
0d588332ad2c branchmap: acquires lock before writting the rev branch cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29615
diff changeset
   771
  $ chmod 555 .hg
0d588332ad2c branchmap: acquires lock before writting the rev branch cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29615
diff changeset
   772
  $ hg head a -T '{rev}\n'
0d588332ad2c branchmap: acquires lock before writting the rev branch cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29615
diff changeset
   773
  5
0d588332ad2c branchmap: acquires lock before writting the rev branch cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29615
diff changeset
   774
  $ chmod 755 .hg
0d588332ad2c branchmap: acquires lock before writting the rev branch cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29615
diff changeset
   775
  $ mv .hg/cache/rbc-revs-v1_ .hg/cache/rbc-revs-v1
0d588332ad2c branchmap: acquires lock before writting the rev branch cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29615
diff changeset
   776
#endif
0d588332ad2c branchmap: acquires lock before writting the rev branch cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29615
diff changeset
   777
23861
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   778
recovery from invalid cache revs file with trailing data
23787
678f53865c68 revset: use localrepo revbranchcache for branch name filtering
Mads Kiilerich <madski@unity3d.com>
parents: 23172
diff changeset
   779
  $ echo >> .hg/cache/rbc-revs-v1
23861
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   780
  $ rm -f .hg/cache/branch* && hg head a -T '{rev}\n' --debug
24378
9347c15d8136 revbranchcache: write cache even during read operations
Durham Goode <durham@fb.com>
parents: 24372
diff changeset
   781
  5
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   782
  truncating cache/rbc-revs-v1 to 160
23861
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   783
  $ f --size .hg/cache/rbc-revs*
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   784
  .hg/cache/rbc-revs-v1: size=160
23861
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   785
recovery from invalid cache file with partial last record
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   786
  $ mv .hg/cache/rbc-revs-v1 .
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   787
  $ f -qDB 119 rbc-revs-v1 > .hg/cache/rbc-revs-v1
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   788
  $ f --size .hg/cache/rbc-revs*
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   789
  .hg/cache/rbc-revs-v1: size=119
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   790
  $ rm -f .hg/cache/branch* && hg head a -T '{rev}\n' --debug
24378
9347c15d8136 revbranchcache: write cache even during read operations
Durham Goode <durham@fb.com>
parents: 24372
diff changeset
   791
  5
23862
7aa1405528a3 branchcache: add debug output whenever cache files use truncate
Mads Kiilerich <madski@unity3d.com>
parents: 23861
diff changeset
   792
  truncating cache/rbc-revs-v1 to 112
23861
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   793
  $ f --size .hg/cache/rbc-revs*
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   794
  .hg/cache/rbc-revs-v1: size=160
23861
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   795
recovery from invalid cache file with missing record - no truncation
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   796
  $ mv .hg/cache/rbc-revs-v1 .
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   797
  $ f -qDB 112 rbc-revs-v1 > .hg/cache/rbc-revs-v1
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   798
  $ rm -f .hg/cache/branch* && hg head a -T '{rev}\n' --debug
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   799
  5
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   800
  $ f --size .hg/cache/rbc-revs*
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   801
  .hg/cache/rbc-revs-v1: size=160
23861
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   802
recovery from invalid cache file with some bad records
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   803
  $ mv .hg/cache/rbc-revs-v1 .
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   804
  $ f -qDB 8 rbc-revs-v1 > .hg/cache/rbc-revs-v1
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   805
  $ f --size .hg/cache/rbc-revs*
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   806
  .hg/cache/rbc-revs-v1: size=8
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   807
  $ f -qDB 112 rbc-revs-v1 >> .hg/cache/rbc-revs-v1
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   808
  $ f --size .hg/cache/rbc-revs*
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   809
  .hg/cache/rbc-revs-v1: size=120
24378
9347c15d8136 revbranchcache: write cache even during read operations
Durham Goode <durham@fb.com>
parents: 24372
diff changeset
   810
  $ hg log -r 'branch(.)' -T '{rev} ' --debug
29615
a2a380e2750f rbc: fix superfluous rebuilding from scratch - don't abuse self._rbcnamescount
Mads Kiilerich <madski@unity3d.com>
parents: 29614
diff changeset
   811
  history modification detected - truncating revision branch cache to revision 13
a2a380e2750f rbc: fix superfluous rebuilding from scratch - don't abuse self._rbcnamescount
Mads Kiilerich <madski@unity3d.com>
parents: 29614
diff changeset
   812
  history modification detected - truncating revision branch cache to revision 1
24378
9347c15d8136 revbranchcache: write cache even during read operations
Durham Goode <durham@fb.com>
parents: 24372
diff changeset
   813
  3 4 8 9 10 11 12 13 truncating cache/rbc-revs-v1 to 8
23861
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   814
  $ rm -f .hg/cache/branch* && hg head a -T '{rev}\n' --debug
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   815
  5
24378
9347c15d8136 revbranchcache: write cache even during read operations
Durham Goode <durham@fb.com>
parents: 24372
diff changeset
   816
  truncating cache/rbc-revs-v1 to 104
23861
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   817
  $ f --size --hexdump --bytes=16 .hg/cache/rbc-revs*
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   818
  .hg/cache/rbc-revs-v1: size=160
23861
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   819
  0000: 19 70 9c 5a 00 00 00 00 dd 6b 44 0d 00 00 00 01 |.p.Z.....kD.....|
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   820
cache is updated when committing
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   821
  $ hg branch i-will-regret-this
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   822
  marked working directory as branch i-will-regret-this
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   823
  $ hg ci -m regrets
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   824
  $ f --size .hg/cache/rbc-*
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   825
  .hg/cache/rbc-names-v1: size=111
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   826
  .hg/cache/rbc-revs-v1: size=168
23861
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   827
update after rollback - the cache will be correct but rbc-names will will still
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   828
contain the branch name even though it no longer is used
23787
678f53865c68 revset: use localrepo revbranchcache for branch name filtering
Mads Kiilerich <madski@unity3d.com>
parents: 23172
diff changeset
   829
  $ hg up -qr '.^'
678f53865c68 revset: use localrepo revbranchcache for branch name filtering
Mads Kiilerich <madski@unity3d.com>
parents: 23172
diff changeset
   830
  $ hg rollback -qf
23861
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   831
  $ f --size --hexdump .hg/cache/rbc-*
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   832
  .hg/cache/rbc-names-v1: size=111
23861
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   833
  0000: 64 65 66 61 75 6c 74 00 61 00 62 00 63 00 61 20 |default.a.b.c.a |
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   834
  0010: 62 72 61 6e 63 68 20 6e 61 6d 65 20 6d 75 63 68 |branch name much|
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   835
  0020: 20 6c 6f 6e 67 65 72 20 74 68 61 6e 20 74 68 65 | longer than the|
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   836
  0030: 20 64 65 66 61 75 6c 74 20 6a 75 73 74 69 66 69 | default justifi|
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   837
  0040: 63 61 74 69 6f 6e 20 75 73 65 64 20 62 79 20 62 |cation used by b|
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   838
  0050: 72 61 6e 63 68 65 73 00 6d 00 6d 64 00 69 2d 77 |ranches.m.md.i-w|
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   839
  0060: 69 6c 6c 2d 72 65 67 72 65 74 2d 74 68 69 73    |ill-regret-this|
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   840
  .hg/cache/rbc-revs-v1: size=160
23861
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   841
  0000: 19 70 9c 5a 00 00 00 00 dd 6b 44 0d 00 00 00 01 |.p.Z.....kD.....|
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   842
  0010: 88 1f e2 b9 00 00 00 01 ac 22 03 33 00 00 00 02 |.........".3....|
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   843
  0020: ae e3 9c d1 00 00 00 02 d8 cb c6 1d 00 00 00 01 |................|
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   844
  0030: 58 97 36 a2 00 00 00 03 10 ff 58 95 00 00 00 04 |X.6.......X.....|
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   845
  0040: ee bb 94 44 00 00 00 02 5f 40 61 bb 00 00 00 02 |...D...._@a.....|
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   846
  0050: bf be 84 1b 00 00 00 02 d3 f1 63 45 80 00 00 02 |..........cE....|
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   847
  0060: e3 d4 9c 05 80 00 00 02 e2 3b 55 05 00 00 00 02 |.........;U.....|
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   848
  0070: f8 94 c2 56 80 00 00 03 f3 44 76 37 00 00 00 05 |...V.....Dv7....|
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   849
  0080: a5 8c a5 d3 00 00 00 05 df 34 3b 0d 00 00 00 05 |.........4;.....|
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   850
  0090: c9 14 c9 9f 00 00 00 06 cd 21 a8 0b 80 00 00 05 |.........!......|
23861
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   851
cache is updated/truncated when stripping - it is thus very hard to get in a
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   852
situation where the cache is out of sync and the hash check detects it
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   853
  $ hg --config extensions.strip= strip -r tip --nob
01426cad66dc tests: rework revision branch cache tests
Mads Kiilerich <madski@unity3d.com>
parents: 23787
diff changeset
   854
  $ f --size .hg/cache/rbc-revs*
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   855
  .hg/cache/rbc-revs-v1: size=152
23787
678f53865c68 revset: use localrepo revbranchcache for branch name filtering
Mads Kiilerich <madski@unity3d.com>
parents: 23172
diff changeset
   856
28558
bcd106d456c4 cache: rebuild branch cache from scratch when inconsistencies are detected
Mads Kiilerich <madski@unity3d.com>
parents: 28145
diff changeset
   857
cache is rebuilt when corruption is detected
bcd106d456c4 cache: rebuild branch cache from scratch when inconsistencies are detected
Mads Kiilerich <madski@unity3d.com>
parents: 28145
diff changeset
   858
  $ echo > .hg/cache/rbc-names-v1
bcd106d456c4 cache: rebuild branch cache from scratch when inconsistencies are detected
Mads Kiilerich <madski@unity3d.com>
parents: 28145
diff changeset
   859
  $ hg log -r '5:&branch(.)' -T '{rev} ' --debug
29615
a2a380e2750f rbc: fix superfluous rebuilding from scratch - don't abuse self._rbcnamescount
Mads Kiilerich <madski@unity3d.com>
parents: 29614
diff changeset
   860
  referenced branch names not found - rebuilding revision branch cache from scratch
28558
bcd106d456c4 cache: rebuild branch cache from scratch when inconsistencies are detected
Mads Kiilerich <madski@unity3d.com>
parents: 28145
diff changeset
   861
  8 9 10 11 12 13 truncating cache/rbc-revs-v1 to 40
bcd106d456c4 cache: rebuild branch cache from scratch when inconsistencies are detected
Mads Kiilerich <madski@unity3d.com>
parents: 28145
diff changeset
   862
  $ f --size --hexdump .hg/cache/rbc-*
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   863
  .hg/cache/rbc-names-v1: size=84
28558
bcd106d456c4 cache: rebuild branch cache from scratch when inconsistencies are detected
Mads Kiilerich <madski@unity3d.com>
parents: 28145
diff changeset
   864
  0000: 62 00 61 00 63 00 61 20 62 72 61 6e 63 68 20 6e |b.a.c.a branch n|
bcd106d456c4 cache: rebuild branch cache from scratch when inconsistencies are detected
Mads Kiilerich <madski@unity3d.com>
parents: 28145
diff changeset
   865
  0010: 61 6d 65 20 6d 75 63 68 20 6c 6f 6e 67 65 72 20 |ame much longer |
bcd106d456c4 cache: rebuild branch cache from scratch when inconsistencies are detected
Mads Kiilerich <madski@unity3d.com>
parents: 28145
diff changeset
   866
  0020: 74 68 61 6e 20 74 68 65 20 64 65 66 61 75 6c 74 |than the default|
bcd106d456c4 cache: rebuild branch cache from scratch when inconsistencies are detected
Mads Kiilerich <madski@unity3d.com>
parents: 28145
diff changeset
   867
  0030: 20 6a 75 73 74 69 66 69 63 61 74 69 6f 6e 20 75 | justification u|
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   868
  0040: 73 65 64 20 62 79 20 62 72 61 6e 63 68 65 73 00 |sed by branches.|
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   869
  0050: 6d 00 6d 64                                     |m.md|
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   870
  .hg/cache/rbc-revs-v1: size=152
28558
bcd106d456c4 cache: rebuild branch cache from scratch when inconsistencies are detected
Mads Kiilerich <madski@unity3d.com>
parents: 28145
diff changeset
   871
  0000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
bcd106d456c4 cache: rebuild branch cache from scratch when inconsistencies are detected
Mads Kiilerich <madski@unity3d.com>
parents: 28145
diff changeset
   872
  0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
bcd106d456c4 cache: rebuild branch cache from scratch when inconsistencies are detected
Mads Kiilerich <madski@unity3d.com>
parents: 28145
diff changeset
   873
  0020: 00 00 00 00 00 00 00 00 d8 cb c6 1d 00 00 00 01 |................|
bcd106d456c4 cache: rebuild branch cache from scratch when inconsistencies are detected
Mads Kiilerich <madski@unity3d.com>
parents: 28145
diff changeset
   874
  0030: 58 97 36 a2 00 00 00 02 10 ff 58 95 00 00 00 03 |X.6.......X.....|
bcd106d456c4 cache: rebuild branch cache from scratch when inconsistencies are detected
Mads Kiilerich <madski@unity3d.com>
parents: 28145
diff changeset
   875
  0040: ee bb 94 44 00 00 00 00 5f 40 61 bb 00 00 00 00 |...D...._@a.....|
bcd106d456c4 cache: rebuild branch cache from scratch when inconsistencies are detected
Mads Kiilerich <madski@unity3d.com>
parents: 28145
diff changeset
   876
  0050: bf be 84 1b 00 00 00 00 d3 f1 63 45 80 00 00 00 |..........cE....|
bcd106d456c4 cache: rebuild branch cache from scratch when inconsistencies are detected
Mads Kiilerich <madski@unity3d.com>
parents: 28145
diff changeset
   877
  0060: e3 d4 9c 05 80 00 00 00 e2 3b 55 05 00 00 00 00 |.........;U.....|
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   878
  0070: f8 94 c2 56 80 00 00 02 f3 44 76 37 00 00 00 04 |...V.....Dv7....|
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   879
  0080: a5 8c a5 d3 00 00 00 04 df 34 3b 0d 00 00 00 04 |.........4;.....|
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   880
  0090: c9 14 c9 9f 00 00 00 05                         |........|
28558
bcd106d456c4 cache: rebuild branch cache from scratch when inconsistencies are detected
Mads Kiilerich <madski@unity3d.com>
parents: 28145
diff changeset
   881
29603
b181a650a886 rbc: test case for cache file not growing correctly, causing bad new entries
Mads Kiilerich <madski@unity3d.com>
parents: 28558
diff changeset
   882
Test that cache files are created and grows correctly:
b181a650a886 rbc: test case for cache file not growing correctly, causing bad new entries
Mads Kiilerich <madski@unity3d.com>
parents: 28558
diff changeset
   883
b181a650a886 rbc: test case for cache file not growing correctly, causing bad new entries
Mads Kiilerich <madski@unity3d.com>
parents: 28558
diff changeset
   884
  $ rm .hg/cache/rbc*
b181a650a886 rbc: test case for cache file not growing correctly, causing bad new entries
Mads Kiilerich <madski@unity3d.com>
parents: 28558
diff changeset
   885
  $ hg log -r "5 & branch(5)" -T "{rev}\n"
b181a650a886 rbc: test case for cache file not growing correctly, causing bad new entries
Mads Kiilerich <madski@unity3d.com>
parents: 28558
diff changeset
   886
  5
b181a650a886 rbc: test case for cache file not growing correctly, causing bad new entries
Mads Kiilerich <madski@unity3d.com>
parents: 28558
diff changeset
   887
  $ f --size --hexdump .hg/cache/rbc-*
b181a650a886 rbc: test case for cache file not growing correctly, causing bad new entries
Mads Kiilerich <madski@unity3d.com>
parents: 28558
diff changeset
   888
  .hg/cache/rbc-names-v1: size=1
b181a650a886 rbc: test case for cache file not growing correctly, causing bad new entries
Mads Kiilerich <madski@unity3d.com>
parents: 28558
diff changeset
   889
  0000: 61                                              |a|
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   890
  .hg/cache/rbc-revs-v1: size=152
29604
db0095c83344 rbc: fix invalid rbc-revs entries caused by missing cache growth
Mads Kiilerich <madski@unity3d.com>
parents: 29603
diff changeset
   891
  0000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
db0095c83344 rbc: fix invalid rbc-revs entries caused by missing cache growth
Mads Kiilerich <madski@unity3d.com>
parents: 29603
diff changeset
   892
  0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
db0095c83344 rbc: fix invalid rbc-revs entries caused by missing cache growth
Mads Kiilerich <madski@unity3d.com>
parents: 29603
diff changeset
   893
  0020: 00 00 00 00 00 00 00 00 d8 cb c6 1d 00 00 00 00 |................|
db0095c83344 rbc: fix invalid rbc-revs entries caused by missing cache growth
Mads Kiilerich <madski@unity3d.com>
parents: 29603
diff changeset
   894
  0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
db0095c83344 rbc: fix invalid rbc-revs entries caused by missing cache growth
Mads Kiilerich <madski@unity3d.com>
parents: 29603
diff changeset
   895
  0040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
db0095c83344 rbc: fix invalid rbc-revs entries caused by missing cache growth
Mads Kiilerich <madski@unity3d.com>
parents: 29603
diff changeset
   896
  0050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
db0095c83344 rbc: fix invalid rbc-revs entries caused by missing cache growth
Mads Kiilerich <madski@unity3d.com>
parents: 29603
diff changeset
   897
  0060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
34074
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   898
  0070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   899
  0080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
abf91c4f9608 branches: correctly show inactive multiheaded branches
the31k <the31k@thethirty.one>
parents: 32952
diff changeset
   900
  0090: 00 00 00 00 00 00 00 00                         |........|
29603
b181a650a886 rbc: test case for cache file not growing correctly, causing bad new entries
Mads Kiilerich <madski@unity3d.com>
parents: 28558
diff changeset
   901
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16612
diff changeset
   902
  $ cd ..
29614
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   903
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   904
Test for multiple incorrect branch cache entries:
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   905
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   906
  $ hg init b
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   907
  $ cd b
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   908
  $ touch f
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   909
  $ hg ci -Aqmf
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   910
  $ echo >> f
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   911
  $ hg ci -Amf
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   912
  $ hg branch -q branch
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   913
  $ hg ci -Amf
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   914
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   915
  $ f --size --hexdump .hg/cache/rbc-*
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   916
  .hg/cache/rbc-names-v1: size=14
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   917
  0000: 64 65 66 61 75 6c 74 00 62 72 61 6e 63 68       |default.branch|
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   918
  .hg/cache/rbc-revs-v1: size=24
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   919
  0000: 66 e5 f5 aa 00 00 00 00 fa 4c 04 e5 00 00 00 00 |f........L......|
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   920
  0010: 56 46 78 69 00 00 00 01                         |VFxi....|
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   921
  $ : > .hg/cache/rbc-revs-v1
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   922
29615
a2a380e2750f rbc: fix superfluous rebuilding from scratch - don't abuse self._rbcnamescount
Mads Kiilerich <madski@unity3d.com>
parents: 29614
diff changeset
   923
No superfluous rebuilding of cache:
29614
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   924
  $ hg log -r "branch(null)&branch(branch)" --debug
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   925
  $ f --size --hexdump .hg/cache/rbc-*
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   926
  .hg/cache/rbc-names-v1: size=14
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   927
  0000: 64 65 66 61 75 6c 74 00 62 72 61 6e 63 68       |default.branch|
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   928
  .hg/cache/rbc-revs-v1: size=24
29615
a2a380e2750f rbc: fix superfluous rebuilding from scratch - don't abuse self._rbcnamescount
Mads Kiilerich <madski@unity3d.com>
parents: 29614
diff changeset
   929
  0000: 66 e5 f5 aa 00 00 00 00 fa 4c 04 e5 00 00 00 00 |f........L......|
29614
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   930
  0010: 56 46 78 69 00 00 00 01                         |VFxi....|
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   931
5c79bae8166f rbc: test case for incorrect and too aggressive invalidation of invalid caches
Mads Kiilerich <madski@unity3d.com>
parents: 29604
diff changeset
   932
  $ cd ..