tests/test-tag.t
author Pierre-Yves David <pierre-yves.david@fb.com>
Sat, 30 Aug 2014 02:28:27 +0200
changeset 22608 bf0ecb224316
parent 21930 a5168eb9b2bc
child 22680 8c65cc0f3c6b
permissions -rw-r--r--
revert: small refactoring in the way backup value are handled The current backup value may have two different values: 1. Do not try to do backup 2. Do backup if applicable We are about to move to: 1. Do not try to do backup 2. Do backup if applicable 3. Do backup in all cases So we change the current values to make room for the new one.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
     1
  $ hg init test
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
     2
  $ cd test
401
af4848f83e68 From: Radoslaw Szkodzinski <astralstorm@gorzow.mm.pl>
mpm@selenic.com
parents:
diff changeset
     3
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
     4
  $ echo a > a
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
     5
  $ hg add a
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
     6
  $ hg commit -m "test"
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
     7
  $ hg history
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
     8
  changeset:   0:acb14030fe0a
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
     9
  tag:         tip
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    10
  user:        test
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
    11
  date:        Thu Jan 01 00:00:00 1970 +0000
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    12
  summary:     test
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    13
  
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    14
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    15
  $ hg tag ' '
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    16
  abort: tag names cannot consist entirely of whitespace
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
    17
  [255]
8417
39cf453da958 clone: try updating to the actual changeset specified in options
Brett Carter <brett@rdnzl.net>
parents: 6321
diff changeset
    18
21418
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
    19
(this tests also that editor is not invoked, if '--edit' is not
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
    20
specified)
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
    21
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
    22
  $ HGEDITOR=cat hg tag "bleah"
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    23
  $ hg history
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
    24
  changeset:   1:d4f0d2909abc
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    25
  tag:         tip
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    26
  user:        test
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
    27
  date:        Thu Jan 01 00:00:00 1970 +0000
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
    28
  summary:     Added tag bleah for changeset acb14030fe0a
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    29
  
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
    30
  changeset:   0:acb14030fe0a
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    31
  tag:         bleah
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    32
  user:        test
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
    33
  date:        Thu Jan 01 00:00:00 1970 +0000
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    34
  summary:     test
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    35
  
11692
52e4ac3e63f7 tag: do not allow tag names to consist solely of whitespace (issue2307)
Benjamin Pollack <benjamin@bitquabit.com>
parents: 11185
diff changeset
    36
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    37
  $ echo foo >> .hgtags
12365
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
    38
  $ hg tag "bleah2"
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    39
  abort: working copy of .hgtags is changed (please commit .hgtags manually)
12365
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
    40
  [255]
401
af4848f83e68 From: Radoslaw Szkodzinski <astralstorm@gorzow.mm.pl>
mpm@selenic.com
parents:
diff changeset
    41
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    42
  $ hg revert .hgtags
12365
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
    43
  $ hg tag -r 0 x y z y y z
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    44
  abort: tag names must be unique
12365
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
    45
  [255]
17813
813db1dccc05 test-tag: test that all reserved names are rejected
Kevin Bullock <kbullock@ringworld.org>
parents: 17260
diff changeset
    46
  $ hg tag tap nada dot tip
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    47
  abort: the name 'tip' is reserved
12365
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
    48
  [255]
17813
813db1dccc05 test-tag: test that all reserved names are rejected
Kevin Bullock <kbullock@ringworld.org>
parents: 17260
diff changeset
    49
  $ hg tag .
813db1dccc05 test-tag: test that all reserved names are rejected
Kevin Bullock <kbullock@ringworld.org>
parents: 17260
diff changeset
    50
  abort: the name '.' is reserved
813db1dccc05 test-tag: test that all reserved names are rejected
Kevin Bullock <kbullock@ringworld.org>
parents: 17260
diff changeset
    51
  [255]
813db1dccc05 test-tag: test that all reserved names are rejected
Kevin Bullock <kbullock@ringworld.org>
parents: 17260
diff changeset
    52
  $ hg tag null
813db1dccc05 test-tag: test that all reserved names are rejected
Kevin Bullock <kbullock@ringworld.org>
parents: 17260
diff changeset
    53
  abort: the name 'null' is reserved
813db1dccc05 test-tag: test that all reserved names are rejected
Kevin Bullock <kbullock@ringworld.org>
parents: 17260
diff changeset
    54
  [255]
12365
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
    55
  $ hg tag "bleah"
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    56
  abort: tag 'bleah' already exists (use -f to force)
12365
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
    57
  [255]
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
    58
  $ hg tag "blecch" "bleah"
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    59
  abort: tag 'bleah' already exists (use -f to force)
12365
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
    60
  [255]
6321
55ba3bc5b8fd tag: allow multiple tags to be added or removed
John Coomes <john.coomes@sun.com>
parents: 4933
diff changeset
    61
12365
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
    62
  $ hg tag --remove "blecch"
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    63
  abort: tag 'blecch' does not exist
12365
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
    64
  [255]
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
    65
  $ hg tag --remove "bleah" "blecch" "blough"
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    66
  abort: tag 'blecch' does not exist
12365
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
    67
  [255]
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    68
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
    69
  $ hg tag -r 0 "bleah0"
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
    70
  $ hg tag -l -r 1 "bleah1"
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
    71
  $ hg tag gack gawk gorp
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
    72
  $ hg tag -f gack
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
    73
  $ hg tag --remove gack gorp
6321
55ba3bc5b8fd tag: allow multiple tags to be added or removed
John Coomes <john.coomes@sun.com>
parents: 4933
diff changeset
    74
13399
eff102facb15 tag: add tests for tags with whitespace (issue2174)
Afuna
parents: 13159
diff changeset
    75
  $ hg tag "bleah "
eff102facb15 tag: add tests for tags with whitespace (issue2174)
Afuna
parents: 13159
diff changeset
    76
  abort: tag 'bleah' already exists (use -f to force)
eff102facb15 tag: add tests for tags with whitespace (issue2174)
Afuna
parents: 13159
diff changeset
    77
  [255]
eff102facb15 tag: add tests for tags with whitespace (issue2174)
Afuna
parents: 13159
diff changeset
    78
  $ hg tag " bleah"
eff102facb15 tag: add tests for tags with whitespace (issue2174)
Afuna
parents: 13159
diff changeset
    79
  abort: tag 'bleah' already exists (use -f to force)
eff102facb15 tag: add tests for tags with whitespace (issue2174)
Afuna
parents: 13159
diff changeset
    80
  [255]
eff102facb15 tag: add tests for tags with whitespace (issue2174)
Afuna
parents: 13159
diff changeset
    81
  $ hg tag " bleah"
eff102facb15 tag: add tests for tags with whitespace (issue2174)
Afuna
parents: 13159
diff changeset
    82
  abort: tag 'bleah' already exists (use -f to force)
eff102facb15 tag: add tests for tags with whitespace (issue2174)
Afuna
parents: 13159
diff changeset
    83
  [255]
eff102facb15 tag: add tests for tags with whitespace (issue2174)
Afuna
parents: 13159
diff changeset
    84
  $ hg tag -r 0 "  bleahbleah  "
eff102facb15 tag: add tests for tags with whitespace (issue2174)
Afuna
parents: 13159
diff changeset
    85
  $ hg tag -r 0 " bleah bleah "
eff102facb15 tag: add tests for tags with whitespace (issue2174)
Afuna
parents: 13159
diff changeset
    86
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    87
  $ cat .hgtags
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
    88
  acb14030fe0a21b60322c440ad2d20cf7685a376 bleah
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
    89
  acb14030fe0a21b60322c440ad2d20cf7685a376 bleah0
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
    90
  336fccc858a4eb69609a291105009e484a6b6b8d gack
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
    91
  336fccc858a4eb69609a291105009e484a6b6b8d gawk
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
    92
  336fccc858a4eb69609a291105009e484a6b6b8d gorp
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
    93
  336fccc858a4eb69609a291105009e484a6b6b8d gack
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
    94
  799667b6f2d9b957f73fa644a918c2df22bab58f gack
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
    95
  799667b6f2d9b957f73fa644a918c2df22bab58f gack
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    96
  0000000000000000000000000000000000000000 gack
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
    97
  336fccc858a4eb69609a291105009e484a6b6b8d gorp
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
    98
  0000000000000000000000000000000000000000 gorp
13399
eff102facb15 tag: add tests for tags with whitespace (issue2174)
Afuna
parents: 13159
diff changeset
    99
  acb14030fe0a21b60322c440ad2d20cf7685a376 bleahbleah
eff102facb15 tag: add tests for tags with whitespace (issue2174)
Afuna
parents: 13159
diff changeset
   100
  acb14030fe0a21b60322c440ad2d20cf7685a376 bleah bleah
eff102facb15 tag: add tests for tags with whitespace (issue2174)
Afuna
parents: 13159
diff changeset
   101
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   102
  $ cat .hg/localtags
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   103
  d4f0d2909abc9290e2773c08837d70c1794e3f5a bleah1
1596
41366b7d6709 fix 'hg tag <tagname> <revision>
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1561
diff changeset
   104
13135
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   105
tagging on a non-head revision
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   106
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   107
  $ hg update 0
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   108
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
13135
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   109
  $ hg tag -l localblah
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   110
  $ hg tag "foobar"
13135
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   111
  abort: not at a branch head (use -f to force)
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   112
  [255]
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   113
  $ hg tag -f "foobar"
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   114
  $ cat .hgtags
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   115
  acb14030fe0a21b60322c440ad2d20cf7685a376 foobar
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   116
  $ cat .hg/localtags
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   117
  d4f0d2909abc9290e2773c08837d70c1794e3f5a bleah1
13135
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   118
  acb14030fe0a21b60322c440ad2d20cf7685a376 localblah
1596
41366b7d6709 fix 'hg tag <tagname> <revision>
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1561
diff changeset
   119
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   120
  $ hg tag -l 'xx
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   121
  > newline'
17850
71c1513fd560 scmutil: generalize message to make it more i18n-friendly
Wagner Bruna <wbruna@yahoo.com>
parents: 17813
diff changeset
   122
  abort: '\n' cannot be used in a name
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   123
  [255]
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   124
  $ hg tag -l 'xx:xx'
17850
71c1513fd560 scmutil: generalize message to make it more i18n-friendly
Wagner Bruna <wbruna@yahoo.com>
parents: 17813
diff changeset
   125
  abort: ':' cannot be used in a name
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   126
  [255]
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   127
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   128
cloning local tags
2647
46182568b4ce change 'hg tag' to tag the parent rev instead of tip
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1933
diff changeset
   129
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   130
  $ cd ..
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   131
  $ hg -R test log -r0:5
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   132
  changeset:   0:acb14030fe0a
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   133
  tag:         bleah
13399
eff102facb15 tag: add tests for tags with whitespace (issue2174)
Afuna
parents: 13159
diff changeset
   134
  tag:         bleah bleah
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   135
  tag:         bleah0
13399
eff102facb15 tag: add tests for tags with whitespace (issue2174)
Afuna
parents: 13159
diff changeset
   136
  tag:         bleahbleah
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   137
  tag:         foobar
13135
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   138
  tag:         localblah
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   139
  user:        test
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   140
  date:        Thu Jan 01 00:00:00 1970 +0000
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   141
  summary:     test
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   142
  
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   143
  changeset:   1:d4f0d2909abc
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   144
  tag:         bleah1
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   145
  user:        test
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   146
  date:        Thu Jan 01 00:00:00 1970 +0000
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   147
  summary:     Added tag bleah for changeset acb14030fe0a
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   148
  
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   149
  changeset:   2:336fccc858a4
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   150
  tag:         gawk
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   151
  user:        test
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   152
  date:        Thu Jan 01 00:00:00 1970 +0000
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   153
  summary:     Added tag bleah0 for changeset acb14030fe0a
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   154
  
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   155
  changeset:   3:799667b6f2d9
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   156
  user:        test
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   157
  date:        Thu Jan 01 00:00:00 1970 +0000
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   158
  summary:     Added tag gack, gawk, gorp for changeset 336fccc858a4
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   159
  
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   160
  changeset:   4:154eeb7c0138
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   161
  user:        test
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   162
  date:        Thu Jan 01 00:00:00 1970 +0000
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   163
  summary:     Added tag gack for changeset 799667b6f2d9
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   164
  
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   165
  changeset:   5:b4bb47aaff09
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   166
  user:        test
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   167
  date:        Thu Jan 01 00:00:00 1970 +0000
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   168
  summary:     Removed tag gack, gorp
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   169
  
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   170
  $ hg clone -q -rbleah1 test test1
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   171
  $ hg -R test1 parents --style=compact
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   172
  1[tip]   d4f0d2909abc   1970-01-01 00:00 +0000   test
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   173
    Added tag bleah for changeset acb14030fe0a
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   174
  
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   175
  $ hg clone -q -r5 test#bleah1 test2
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   176
  $ hg -R test2 parents --style=compact
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   177
  5[tip]   b4bb47aaff09   1970-01-01 00:00 +0000   test
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   178
    Removed tag gack, gorp
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   179
  
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   180
  $ hg clone -q -U test#bleah1 test3
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   181
  $ hg -R test3 parents --style=compact
4892
d69b1fb111b9 tag: handle .hgtags and .hg/localtags with missing final newline (issue 601)
Bryan O'Sullivan <bos@serpentine.com>
parents: 2647
diff changeset
   182
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   183
  $ cd test
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   184
12399
4fee1fd3de9a tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents: 12365
diff changeset
   185
Issue601: hg tag doesn't do the right thing if .hgtags or localtags
4fee1fd3de9a tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents: 12365
diff changeset
   186
doesn't end with EOL
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   187
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   188
  $ python << EOF
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   189
  > f = file('.hg/localtags'); last = f.readlines()[-1][:-1]; f.close()
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   190
  > f = file('.hg/localtags', 'w'); f.write(last); f.close()
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   191
  > EOF
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   192
  $ cat .hg/localtags; echo
13135
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   193
  acb14030fe0a21b60322c440ad2d20cf7685a376 localblah
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   194
  $ hg tag -l localnewline
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   195
  $ cat .hg/localtags; echo
13135
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   196
  acb14030fe0a21b60322c440ad2d20cf7685a376 localblah
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   197
  c2899151f4e76890c602a2597a650a72666681bf localnewline
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   198
  
11063
eb23c876c111 tag: warn users about tag/branch possible name conflicts
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 8417
diff changeset
   199
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   200
  $ python << EOF
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   201
  > f = file('.hgtags'); last = f.readlines()[-1][:-1]; f.close()
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   202
  > f = file('.hgtags', 'w'); f.write(last); f.close()
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   203
  > EOF
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   204
  $ hg ci -m'broken manual edit of .hgtags'
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   205
  $ cat .hgtags; echo
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   206
  acb14030fe0a21b60322c440ad2d20cf7685a376 foobar
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   207
  $ hg tag newline
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   208
  $ cat .hgtags; echo
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   209
  acb14030fe0a21b60322c440ad2d20cf7685a376 foobar
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11788
diff changeset
   210
  a0eea09de1eeec777b46f2085260a373b2fbc293 newline
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   211
  
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   212
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   213
tag and branch using same name
11185
6d7cf82453be tag: add -e/--edit option for modifying the commit message
Steve Losh <steve@stevelosh.com>
parents: 11063
diff changeset
   214
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   215
  $ hg branch tag-and-branch-same-name
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   216
  marked working directory as branch tag-and-branch-same-name
15615
41885892796e branch: warn on branching
Matt Mackall <mpm@selenic.com>
parents: 14162
diff changeset
   217
  (branches are permanent and global, did you want a bookmark?)
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   218
  $ hg ci -m"discouraged"
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   219
  $ hg tag tag-and-branch-same-name
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   220
  warning: tag tag-and-branch-same-name conflicts with existing branch name
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   221
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   222
test custom commit messages
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   223
16901
5b89700cce30 tests: consistently use a HGEDITOR pattern that works with msys on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16680
diff changeset
   224
  $ cat > editor.sh << '__EOF__'
21418
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   225
  > echo "==== before editing"
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   226
  > cat "$1"
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   227
  > echo "===="
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   228
  > echo "custom tag message" > "$1"
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   229
  > echo "second line" >> "$1"
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   230
  > __EOF__
20767
bcfc4f625e57 tag: save manually edited commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19123
diff changeset
   231
bcfc4f625e57 tag: save manually edited commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19123
diff changeset
   232
at first, test saving last-message.txt
bcfc4f625e57 tag: save manually edited commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19123
diff changeset
   233
21237
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   234
(test that editor is not invoked before transaction starting)
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   235
20767
bcfc4f625e57 tag: save manually edited commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19123
diff changeset
   236
  $ cat > .hg/hgrc << '__EOF__'
bcfc4f625e57 tag: save manually edited commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19123
diff changeset
   237
  > [hooks]
21237
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   238
  > # this failure occurs before editor invocation
20767
bcfc4f625e57 tag: save manually edited commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19123
diff changeset
   239
  > pretag.test-saving-lastmessage = false
bcfc4f625e57 tag: save manually edited commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19123
diff changeset
   240
  > __EOF__
bcfc4f625e57 tag: save manually edited commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19123
diff changeset
   241
  $ rm -f .hg/last-message.txt
bcfc4f625e57 tag: save manually edited commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19123
diff changeset
   242
  $ HGEDITOR="\"sh\" \"`pwd`/editor.sh\"" hg tag custom-tag -e
bcfc4f625e57 tag: save manually edited commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19123
diff changeset
   243
  abort: pretag.test-saving-lastmessage hook exited with status 1
bcfc4f625e57 tag: save manually edited commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19123
diff changeset
   244
  [255]
21930
a5168eb9b2bc tests: cat error messages are different on Solaris
Danek Duvall <danek.duvall@oracle.com>
parents: 21922
diff changeset
   245
  $ test -f .hg/last-message.txt
21237
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   246
  [1]
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   247
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   248
(test that editor is invoked and commit message is saved into
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   249
"last-message.txt")
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   250
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   251
  $ cat >> .hg/hgrc << '__EOF__'
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   252
  > [hooks]
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   253
  > pretag.test-saving-lastmessage =
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   254
  > # this failure occurs after editor invocation
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   255
  > pretxncommit.unexpectedabort = false
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   256
  > __EOF__
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   257
21418
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   258
(this tests also that editor is invoked, if '--edit' is specified,
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   259
regardless of '--message')
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   260
21237
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   261
  $ rm -f .hg/last-message.txt
21418
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   262
  $ HGEDITOR="\"sh\" \"`pwd`/editor.sh\"" hg tag custom-tag -e -m "foo bar"
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   263
  ==== before editing
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   264
  foo bar
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   265
  
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   266
  
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   267
  HG: Enter commit message.  Lines beginning with 'HG:' are removed.
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   268
  HG: Leave message empty to abort commit.
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   269
  HG: --
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   270
  HG: user: test
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   271
  HG: branch 'tag-and-branch-same-name'
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   272
  HG: changed .hgtags
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   273
  ====
21237
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   274
  transaction abort!
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   275
  rollback completed
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   276
  note: commit message saved in .hg/last-message.txt
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   277
  abort: pretxncommit.unexpectedabort hook exited with status 1
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   278
  [255]
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   279
  $ cat .hg/last-message.txt
20767
bcfc4f625e57 tag: save manually edited commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19123
diff changeset
   280
  custom tag message
bcfc4f625e57 tag: save manually edited commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19123
diff changeset
   281
  second line
21237
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   282
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   283
  $ cat >> .hg/hgrc << '__EOF__'
20767
bcfc4f625e57 tag: save manually edited commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19123
diff changeset
   284
  > [hooks]
21237
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   285
  > pretxncommit.unexpectedabort =
20767
bcfc4f625e57 tag: save manually edited commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19123
diff changeset
   286
  > __EOF__
21237
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   287
  $ hg status .hgtags
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   288
  M .hgtags
0054a77f49df localrepo: add "editor" argument to "tag()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20767
diff changeset
   289
  $ hg revert --no-backup -q .hgtags
20767
bcfc4f625e57 tag: save manually edited commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19123
diff changeset
   290
bcfc4f625e57 tag: save manually edited commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19123
diff changeset
   291
then, test custom commit message itself
bcfc4f625e57 tag: save manually edited commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19123
diff changeset
   292
16901
5b89700cce30 tests: consistently use a HGEDITOR pattern that works with msys on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16680
diff changeset
   293
  $ HGEDITOR="\"sh\" \"`pwd`/editor.sh\"" hg tag custom-tag -e
21418
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   294
  ==== before editing
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   295
  Added tag custom-tag for changeset 75a534207be6
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   296
  
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   297
  
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   298
  HG: Enter commit message.  Lines beginning with 'HG:' are removed.
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   299
  HG: Leave message empty to abort commit.
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   300
  HG: --
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   301
  HG: user: test
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   302
  HG: branch 'tag-and-branch-same-name'
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   303
  HG: changed .hgtags
d4b8fc753455 tag: use the editor gotten by "getcommiteditor()" instead of "ui.edit()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21237
diff changeset
   304
  ====
11788
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   305
  $ hg log -l1 --template "{desc}\n"
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   306
  custom tag message
b3de1438028d tests: unify test-tag
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11692
diff changeset
   307
  second line
13133
c1492615cdee tag: don't check .hgtags status if --local passed
Kevin Bullock <kbullock@ringworld.org>
parents: 12642
diff changeset
   308
13135
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   309
13133
c1492615cdee tag: don't check .hgtags status if --local passed
Kevin Bullock <kbullock@ringworld.org>
parents: 12642
diff changeset
   310
local tag with .hgtags modified
c1492615cdee tag: don't check .hgtags status if --local passed
Kevin Bullock <kbullock@ringworld.org>
parents: 12642
diff changeset
   311
c1492615cdee tag: don't check .hgtags status if --local passed
Kevin Bullock <kbullock@ringworld.org>
parents: 12642
diff changeset
   312
  $ hg tag hgtags-modified
c1492615cdee tag: don't check .hgtags status if --local passed
Kevin Bullock <kbullock@ringworld.org>
parents: 12642
diff changeset
   313
  $ hg rollback
13446
1e497df514e2 rollback: clarifies the message about the reverted state (issue2628)
Gilles Moris <gilles.moris@free.fr>
parents: 13399
diff changeset
   314
  repository tip rolled back to revision 13 (undo commit)
1e497df514e2 rollback: clarifies the message about the reverted state (issue2628)
Gilles Moris <gilles.moris@free.fr>
parents: 13399
diff changeset
   315
  working directory now based on revision 13
13133
c1492615cdee tag: don't check .hgtags status if --local passed
Kevin Bullock <kbullock@ringworld.org>
parents: 12642
diff changeset
   316
  $ hg st
c1492615cdee tag: don't check .hgtags status if --local passed
Kevin Bullock <kbullock@ringworld.org>
parents: 12642
diff changeset
   317
  M .hgtags
c1492615cdee tag: don't check .hgtags status if --local passed
Kevin Bullock <kbullock@ringworld.org>
parents: 12642
diff changeset
   318
  ? .hgtags.orig
16901
5b89700cce30 tests: consistently use a HGEDITOR pattern that works with msys on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16680
diff changeset
   319
  ? editor.sh
13133
c1492615cdee tag: don't check .hgtags status if --local passed
Kevin Bullock <kbullock@ringworld.org>
parents: 12642
diff changeset
   320
  $ hg tag --local baz
c1492615cdee tag: don't check .hgtags status if --local passed
Kevin Bullock <kbullock@ringworld.org>
parents: 12642
diff changeset
   321
  $ hg revert --no-backup .hgtags
13134
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   322
13135
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   323
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   324
tagging when at named-branch-head that's not a topo-head
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   325
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   326
  $ hg up default
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   327
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   328
  $ hg merge -t internal:local
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   329
  0 files updated, 1 files merged, 0 files removed, 0 files unresolved
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   330
  (branch merge, don't forget to commit)
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   331
  $ hg ci -m 'merge named branch'
13399
eff102facb15 tag: add tests for tags with whitespace (issue2174)
Afuna
parents: 13159
diff changeset
   332
  $ hg up 13
13135
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   333
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   334
  $ hg tag new-topo-head
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   335
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   336
tagging on null rev
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   337
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   338
  $ hg up null
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   339
  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   340
  $ hg tag nullrev
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   341
  abort: not at a branch head (use -f to force)
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   342
  [255]
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   343
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   344
  $ hg init empty
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   345
  $ hg tag -R empty nullrev
18906
ef7068173a22 tag: clarify cryptic error message when tagging null revision
Mads Kiilerich <madski@unity3d.com>
parents: 17850
diff changeset
   346
  abort: cannot tag null revision
17260
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 16901
diff changeset
   347
  [255]
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 16901
diff changeset
   348
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 16901
diff changeset
   349
  $ hg tag -R empty -r 00000000000 -f nulltag
18906
ef7068173a22 tag: clarify cryptic error message when tagging null revision
Mads Kiilerich <madski@unity3d.com>
parents: 17850
diff changeset
   350
  abort: cannot tag null revision
17260
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 16901
diff changeset
   351
  [255]
13135
1c1ca9d393f4 tag: abort if not at a branch head (issue2552)
Kevin Bullock <kbullock@ringworld.org>
parents: 13134
diff changeset
   352
13134
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   353
  $ cd ..
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   354
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   355
tagging on an uncommitted merge (issue2542)
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   356
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   357
  $ hg init repo-tag-uncommitted-merge
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   358
  $ cd repo-tag-uncommitted-merge
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   359
  $ echo c1 > f1
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   360
  $ hg ci -Am0
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   361
  adding f1
13159
3172da69ff37 tests: eliminate fast-forward merge in test-tag
Matt Mackall <mpm@selenic.com>
parents: 13135
diff changeset
   362
  $ echo c2 > f2
3172da69ff37 tests: eliminate fast-forward merge in test-tag
Matt Mackall <mpm@selenic.com>
parents: 13135
diff changeset
   363
  $ hg ci -Am1
3172da69ff37 tests: eliminate fast-forward merge in test-tag
Matt Mackall <mpm@selenic.com>
parents: 13135
diff changeset
   364
  adding f2
3172da69ff37 tests: eliminate fast-forward merge in test-tag
Matt Mackall <mpm@selenic.com>
parents: 13135
diff changeset
   365
  $ hg co -q 0
13134
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   366
  $ hg branch b1
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   367
  marked working directory as branch b1
15615
41885892796e branch: warn on branching
Matt Mackall <mpm@selenic.com>
parents: 14162
diff changeset
   368
  (branches are permanent and global, did you want a bookmark?)
13159
3172da69ff37 tests: eliminate fast-forward merge in test-tag
Matt Mackall <mpm@selenic.com>
parents: 13135
diff changeset
   369
  $ hg ci -m2
13134
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   370
  $ hg up default
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   371
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   372
  $ hg merge b1
13159
3172da69ff37 tests: eliminate fast-forward merge in test-tag
Matt Mackall <mpm@selenic.com>
parents: 13135
diff changeset
   373
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
13134
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   374
  (branch merge, don't forget to commit)
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   375
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   376
  $ hg tag t1
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   377
  abort: uncommitted merge
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   378
  [255]
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   379
  $ hg status
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   380
  $ hg tag --rev 1 t2
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   381
  abort: uncommitted merge
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   382
  [255]
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   383
  $ hg tag --rev 1 --local t3
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   384
  $ hg tags -v
14162
301725c3df9a localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 13446
diff changeset
   385
  tip                                2:2a156e8887cc
13159
3172da69ff37 tests: eliminate fast-forward merge in test-tag
Matt Mackall <mpm@selenic.com>
parents: 13135
diff changeset
   386
  t3                                 1:c3adabd1a5f4 local
13134
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   387
ea3c93b53fdb tag: fix uncommitted merge check and error message (issue2542)
Kevin Bullock <kbullock@ringworld.org>
parents: 13133
diff changeset
   388
  $ cd ..
16680
d0e419b0f7de tag: run commit hook when lock is released (issue3344)
Mads Kiilerich <mads@kiilerich.com>
parents: 15623
diff changeset
   389
d0e419b0f7de tag: run commit hook when lock is released (issue3344)
Mads Kiilerich <mads@kiilerich.com>
parents: 15623
diff changeset
   390
commit hook on tag used to be run without write lock - issue3344
d0e419b0f7de tag: run commit hook when lock is released (issue3344)
Mads Kiilerich <mads@kiilerich.com>
parents: 15623
diff changeset
   391
d0e419b0f7de tag: run commit hook when lock is released (issue3344)
Mads Kiilerich <mads@kiilerich.com>
parents: 15623
diff changeset
   392
  $ hg init repo-tag
17260
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 16901
diff changeset
   393
  $ touch repo-tag/test
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 16901
diff changeset
   394
  $ hg -R repo-tag commit -A -m "test"
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 16901
diff changeset
   395
  adding test
16680
d0e419b0f7de tag: run commit hook when lock is released (issue3344)
Mads Kiilerich <mads@kiilerich.com>
parents: 15623
diff changeset
   396
  $ hg init repo-tag-target
16901
5b89700cce30 tests: consistently use a HGEDITOR pattern that works with msys on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16680
diff changeset
   397
  $ hg -R repo-tag --config hooks.commit="\"hg\" push \"`pwd`/repo-tag-target\"" tag tag
19123
a91894c8064a check-code: add more path sep glob checks
Matt Mackall <mpm@selenic.com>
parents: 18906
diff changeset
   398
  pushing to $TESTTMP/repo-tag-target (glob)
16680
d0e419b0f7de tag: run commit hook when lock is released (issue3344)
Mads Kiilerich <mads@kiilerich.com>
parents: 15623
diff changeset
   399
  searching for changes
d0e419b0f7de tag: run commit hook when lock is released (issue3344)
Mads Kiilerich <mads@kiilerich.com>
parents: 15623
diff changeset
   400
  adding changesets
d0e419b0f7de tag: run commit hook when lock is released (issue3344)
Mads Kiilerich <mads@kiilerich.com>
parents: 15623
diff changeset
   401
  adding manifests
d0e419b0f7de tag: run commit hook when lock is released (issue3344)
Mads Kiilerich <mads@kiilerich.com>
parents: 15623
diff changeset
   402
  adding file changes
17260
e432fb4b4221 tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents: 16901
diff changeset
   403
  added 2 changesets with 2 changes to 2 files
16680
d0e419b0f7de tag: run commit hook when lock is released (issue3344)
Mads Kiilerich <mads@kiilerich.com>
parents: 15623
diff changeset
   404
21922
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   405
automatically merge resolvable tag conflicts (i.e. tags that differ in rank)
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   406
create two clones with some different tags as well as some common tags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   407
check that we can merge tags that differ in rank
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   408
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   409
  $ hg init repo-automatic-tag-merge
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   410
  $ cd repo-automatic-tag-merge
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   411
  $ echo c0 > f0
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   412
  $ hg ci -A -m0
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   413
  adding f0
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   414
  $ hg tag tbase
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   415
  $ cd ..
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   416
  $ hg clone repo-automatic-tag-merge repo-automatic-tag-merge-clone
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   417
  updating to branch default
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   418
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   419
  $ cd repo-automatic-tag-merge-clone
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   420
  $ echo c1 > f1
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   421
  $ hg ci -A -m1
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   422
  adding f1
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   423
  $ hg tag t1 t2 t3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   424
  $ hg tag --remove t2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   425
  $ hg tag t5
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   426
  $ echo c2 > f2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   427
  $ hg ci -A -m2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   428
  adding f2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   429
  $ hg tag -f t3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   430
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   431
  $ cd ../repo-automatic-tag-merge
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   432
  $ echo c3 > f3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   433
  $ hg ci -A -m3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   434
  adding f3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   435
  $ hg tag -f t4 t5 t6
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   436
  $ hg tag --remove t5
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   437
  $ echo c4 > f4
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   438
  $ hg ci -A -m4
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   439
  adding f4
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   440
  $ hg tag t2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   441
  $ hg tag -f t6
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   442
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   443
  $ cd ../repo-automatic-tag-merge-clone
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   444
  $ hg pull
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   445
  pulling from $TESTTMP/repo-automatic-tag-merge (glob)
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   446
  searching for changes
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   447
  adding changesets
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   448
  adding manifests
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   449
  adding file changes
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   450
  added 6 changesets with 6 changes to 3 files (+1 heads)
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   451
  (run 'hg heads' to see heads, 'hg merge' to merge)
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   452
  $ hg merge --tool internal:tagmerge
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   453
  merging .hgtags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   454
  2 files updated, 1 files merged, 0 files removed, 0 files unresolved
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   455
  (branch merge, don't forget to commit)
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   456
  $ hg status
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   457
  M .hgtags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   458
  M f3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   459
  M f4
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   460
  $ hg resolve -l
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   461
  R .hgtags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   462
  $ cat .hgtags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   463
  9aa4e1292a27a248f8d07339bed9931d54907be7 t4
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   464
  9aa4e1292a27a248f8d07339bed9931d54907be7 t6
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   465
  9aa4e1292a27a248f8d07339bed9931d54907be7 t6
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   466
  09af2ce14077a94effef208b49a718f4836d4338 t6
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   467
  6cee5c8f3e5b4ae1a3996d2f6489c3e08eb5aea7 tbase
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   468
  4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t1
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   469
  929bca7b18d067cbf3844c3896319a940059d748 t2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   470
  4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   471
  4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   472
  4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   473
  0000000000000000000000000000000000000000 t2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   474
  875517b4806a848f942811a315a5bce30804ae85 t5
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   475
  9aa4e1292a27a248f8d07339bed9931d54907be7 t5
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   476
  9aa4e1292a27a248f8d07339bed9931d54907be7 t5
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   477
  0000000000000000000000000000000000000000 t5
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   478
  4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   479
  79505d5360b07e3e79d1052e347e73c02b8afa5b t3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   480
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   481
check that the merge tried to minimize the diff witht he first merge parent
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   482
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   483
  $ hg diff --git -r 'p1()' .hgtags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   484
  diff --git a/.hgtags b/.hgtags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   485
  --- a/.hgtags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   486
  +++ b/.hgtags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   487
  @@ -1,9 +1,17 @@
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   488
  +9aa4e1292a27a248f8d07339bed9931d54907be7 t4
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   489
  +9aa4e1292a27a248f8d07339bed9931d54907be7 t6
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   490
  +9aa4e1292a27a248f8d07339bed9931d54907be7 t6
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   491
  +09af2ce14077a94effef208b49a718f4836d4338 t6
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   492
   6cee5c8f3e5b4ae1a3996d2f6489c3e08eb5aea7 tbase
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   493
   4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t1
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   494
  +929bca7b18d067cbf3844c3896319a940059d748 t2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   495
   4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   496
   4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   497
   4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   498
   0000000000000000000000000000000000000000 t2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   499
   875517b4806a848f942811a315a5bce30804ae85 t5
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   500
  +9aa4e1292a27a248f8d07339bed9931d54907be7 t5
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   501
  +9aa4e1292a27a248f8d07339bed9931d54907be7 t5
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   502
  +0000000000000000000000000000000000000000 t5
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   503
   4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   504
   79505d5360b07e3e79d1052e347e73c02b8afa5b t3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   505
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   506
detect merge tag conflicts
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   507
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   508
  $ hg update -C -r tip
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   509
  3 files updated, 0 files merged, 2 files removed, 0 files unresolved
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   510
  $ hg tag t7
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   511
  $ hg update -C -r 'first(sort(head()))'
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   512
  3 files updated, 0 files merged, 2 files removed, 0 files unresolved
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   513
  $ printf "%s %s\n" `hg log -r . --template "{node} t7"` >> .hgtags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   514
  $ hg commit -m "manually add conflicting t7 tag"
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   515
  $ hg merge --tool internal:tagmerge
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   516
  merging .hgtags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   517
  automatic .hgtags merge failed
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   518
  the following 1 tags are in conflict: t7
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   519
  automatic tag merging of .hgtags failed! (use 'hg resolve --tool internal:merge' or another merge tool of your choice)
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   520
  2 files updated, 0 files merged, 0 files removed, 1 files unresolved
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   521
  use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   522
  [1]
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   523
  $ hg resolve -l
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   524
  U .hgtags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   525
  $ cat .hgtags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   526
  6cee5c8f3e5b4ae1a3996d2f6489c3e08eb5aea7 tbase
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   527
  4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t1
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   528
  4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   529
  4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   530
  4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   531
  0000000000000000000000000000000000000000 t2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   532
  875517b4806a848f942811a315a5bce30804ae85 t5
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   533
  4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   534
  79505d5360b07e3e79d1052e347e73c02b8afa5b t3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   535
  ea918d56be86a4afc5a95312e8b6750e1428d9d2 t7
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   536
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   537
  $ cd ..
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   538
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   539
handle the loss of tags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   540
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   541
  $ hg clone repo-automatic-tag-merge-clone repo-merge-lost-tags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   542
  updating to branch default
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   543
  4 files updated, 0 files merged, 0 files removed, 0 files unresolved
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   544
  $ cd repo-merge-lost-tags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   545
  $ echo c5 > f5
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   546
  $ hg ci -A -m5
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   547
  adding f5
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   548
  $ hg tag -f t7
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   549
  $ hg update -r 'p1(t7)'
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   550
  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   551
  $ printf '' > .hgtags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   552
  $ hg commit -m 'delete all tags'
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   553
  created new head
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   554
  $ hg update -r 'max(t7::)'
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   555
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   556
  $ hg merge -r tip --tool internal:tagmerge
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   557
  merging .hgtags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   558
  0 files updated, 1 files merged, 0 files removed, 0 files unresolved
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   559
  (branch merge, don't forget to commit)
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   560
  $ hg resolve -l
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   561
  R .hgtags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   562
  $ cat .hgtags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   563
  6cee5c8f3e5b4ae1a3996d2f6489c3e08eb5aea7 tbase
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   564
  0000000000000000000000000000000000000000 tbase
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   565
  4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t1
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   566
  0000000000000000000000000000000000000000 t1
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   567
  4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   568
  4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   569
  4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   570
  0000000000000000000000000000000000000000 t2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   571
  875517b4806a848f942811a315a5bce30804ae85 t5
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   572
  0000000000000000000000000000000000000000 t5
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   573
  4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   574
  79505d5360b07e3e79d1052e347e73c02b8afa5b t3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   575
  0000000000000000000000000000000000000000 t3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   576
  ea918d56be86a4afc5a95312e8b6750e1428d9d2 t7
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   577
  0000000000000000000000000000000000000000 t7
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   578
  ea918d56be86a4afc5a95312e8b6750e1428d9d2 t7
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   579
  fd3a9e394ce3afb354a496323bf68ac1755a30de t7
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   580
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   581
also check that we minimize the diff with the 1st merge parent
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   582
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   583
  $ hg diff --git -r 'p1()' .hgtags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   584
  diff --git a/.hgtags b/.hgtags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   585
  --- a/.hgtags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   586
  +++ b/.hgtags
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   587
  @@ -1,12 +1,17 @@
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   588
   6cee5c8f3e5b4ae1a3996d2f6489c3e08eb5aea7 tbase
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   589
  +0000000000000000000000000000000000000000 tbase
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   590
   4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t1
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   591
  +0000000000000000000000000000000000000000 t1
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   592
   4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   593
   4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   594
   4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   595
   0000000000000000000000000000000000000000 t2
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   596
   875517b4806a848f942811a315a5bce30804ae85 t5
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   597
  +0000000000000000000000000000000000000000 t5
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   598
   4f3e9b90005b68b4d8a3f4355cedc302a8364f5c t3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   599
   79505d5360b07e3e79d1052e347e73c02b8afa5b t3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   600
  +0000000000000000000000000000000000000000 t3
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   601
   ea918d56be86a4afc5a95312e8b6750e1428d9d2 t7
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   602
  +0000000000000000000000000000000000000000 t7
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   603
   ea918d56be86a4afc5a95312e8b6750e1428d9d2 t7
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   604
   fd3a9e394ce3afb354a496323bf68ac1755a30de t7
50e20154cb68 filemerge: add internal:tagmerge merge tool
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 21418
diff changeset
   605