tests/test-import.t
author Pierre-Yves David <pierre-yves.david@octobus.net>
Thu, 04 Jan 2024 14:51:48 +0100
changeset 51339 9a1239c362ae
parent 50725 7e5be4a7cda7
permissions -rw-r--r--
delta-find: split the "sparse" part of `_pre_filter_rev` in a method Since `_pre_filter_rev` contains logic from various sources of constraint, we start splitting is in subfunction to clarify and document the grouping.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
     1
  $ hg init a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
     2
  $ mkdir a/d1
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
     3
  $ mkdir a/d1/d2
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
     4
  $ echo line 1 > a/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
     5
  $ echo line 1 > a/d1/d2/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
     6
  $ hg --cwd a ci -Ama
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
     7
  adding a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
     8
  adding d1/d2/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
     9
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    10
  $ echo line 2 >> a/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    11
  $ hg --cwd a ci -u someone -d '1 0' -m'second change'
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    12
15327
67e92d29ecb5 import: abort usefully if no patch name given
Kevin Bullock <kbullock@ringworld.org>
parents: 15198
diff changeset
    13
import with no args:
67e92d29ecb5 import: abort usefully if no patch name given
Kevin Bullock <kbullock@ringworld.org>
parents: 15198
diff changeset
    14
67e92d29ecb5 import: abort usefully if no patch name given
Kevin Bullock <kbullock@ringworld.org>
parents: 15198
diff changeset
    15
  $ hg --cwd a import
67e92d29ecb5 import: abort usefully if no patch name given
Kevin Bullock <kbullock@ringworld.org>
parents: 15198
diff changeset
    16
  abort: need at least one patch to import
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45740
diff changeset
    17
  [10]
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    18
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
    19
generate patches for the test
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
    20
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
    21
  $ hg --cwd a export tip > exported-tip.patch
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
    22
  $ hg --cwd a diff -r0:1 > diffed-tip.patch
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
    23
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
    24
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    25
import exported patch
21417
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
    26
(this also tests that editor is not invoked, if the patch contains the
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
    27
commit message and '--edit' is not specified)
2513
f22e3e8fd457 import: added tests, fixed bugs found by tests and asak.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    28
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    29
  $ hg clone -r0 a b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    30
  adding changesets
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    31
  adding manifests
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    32
  adding file changes
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    33
  added 1 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 32976
diff changeset
    34
  new changesets 80971e65b431
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    35
  updating to branch default
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    36
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
43066
db33e4f25729 import: add debug messages when parsing data from patch header
Denis Laxalde <denis@laxalde.org>
parents: 40872
diff changeset
    37
  $ HGEDITOR=cat hg --cwd b import --debug ../exported-tip.patch
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
    38
  applying ../exported-tip.patch
43066
db33e4f25729 import: add debug messages when parsing data from patch header
Denis Laxalde <denis@laxalde.org>
parents: 40872
diff changeset
    39
  Subject: 
db33e4f25729 import: add debug messages when parsing data from patch header
Denis Laxalde <denis@laxalde.org>
parents: 40872
diff changeset
    40
  
db33e4f25729 import: add debug messages when parsing data from patch header
Denis Laxalde <denis@laxalde.org>
parents: 40872
diff changeset
    41
  Content-Type: text/plain
db33e4f25729 import: add debug messages when parsing data from patch header
Denis Laxalde <denis@laxalde.org>
parents: 40872
diff changeset
    42
  found patch at byte 202
db33e4f25729 import: add debug messages when parsing data from patch header
Denis Laxalde <denis@laxalde.org>
parents: 40872
diff changeset
    43
  patch generated by hg export
db33e4f25729 import: add debug messages when parsing data from patch header
Denis Laxalde <denis@laxalde.org>
parents: 40872
diff changeset
    44
  From: someone
db33e4f25729 import: add debug messages when parsing data from patch header
Denis Laxalde <denis@laxalde.org>
parents: 40872
diff changeset
    45
  Date: 1 0
db33e4f25729 import: add debug messages when parsing data from patch header
Denis Laxalde <denis@laxalde.org>
parents: 40872
diff changeset
    46
  Node ID: 1d4bd90af0e43687763d158dfa83ff2a4b6c0c32
db33e4f25729 import: add debug messages when parsing data from patch header
Denis Laxalde <denis@laxalde.org>
parents: 40872
diff changeset
    47
  message:
db33e4f25729 import: add debug messages when parsing data from patch header
Denis Laxalde <denis@laxalde.org>
parents: 40872
diff changeset
    48
  second change
db33e4f25729 import: add debug messages when parsing data from patch header
Denis Laxalde <denis@laxalde.org>
parents: 40872
diff changeset
    49
  patching file a
db33e4f25729 import: add debug messages when parsing data from patch header
Denis Laxalde <denis@laxalde.org>
parents: 40872
diff changeset
    50
  committing files:
db33e4f25729 import: add debug messages when parsing data from patch header
Denis Laxalde <denis@laxalde.org>
parents: 40872
diff changeset
    51
  a
db33e4f25729 import: add debug messages when parsing data from patch header
Denis Laxalde <denis@laxalde.org>
parents: 40872
diff changeset
    52
  committing manifest
db33e4f25729 import: add debug messages when parsing data from patch header
Denis Laxalde <denis@laxalde.org>
parents: 40872
diff changeset
    53
  committing changelog
db33e4f25729 import: add debug messages when parsing data from patch header
Denis Laxalde <denis@laxalde.org>
parents: 40872
diff changeset
    54
  created 1d4bd90af0e4
db33e4f25729 import: add debug messages when parsing data from patch header
Denis Laxalde <denis@laxalde.org>
parents: 40872
diff changeset
    55
  updating the branch cache
2513
f22e3e8fd457 import: added tests, fixed bugs found by tests and asak.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    56
18648
76b69cccb07a export: show 'Date' header in a format that also is readable for humans
Mads Kiilerich <mads@kiilerich.com>
parents: 17712
diff changeset
    57
message and committer and date should be same
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    58
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
    59
  $ hg --cwd b tip
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
    60
  changeset:   1:1d4bd90af0e4
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
    61
  tag:         tip
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
    62
  user:        someone
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
    63
  date:        Thu Jan 01 00:00:01 1970 +0000
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    64
  summary:     second change
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
    65
  
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    66
  $ rm -r b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    67
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    68
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    69
import exported patch with external patcher
21417
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
    70
(this also tests that editor is invoked, if the '--edit' is specified,
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
    71
regardless of the commit message in the patch)
2513
f22e3e8fd457 import: added tests, fixed bugs found by tests and asak.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    72
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    73
  $ cat > dummypatch.py <<EOF
29485
6a98f9408a50 py3: make files use absolute_import and print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents: 27054
diff changeset
    74
  > print('patching file a')
36024
2a81ed6c3bb9 py3: replace file() with open() in test-import.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 35393
diff changeset
    75
  > open('a', 'wb').write(b'line2\n')
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    76
  > EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    77
  $ hg clone -r0 a b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    78
  adding changesets
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    79
  adding manifests
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    80
  adding file changes
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    81
  added 1 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 32976
diff changeset
    82
  new changesets 80971e65b431
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    83
  updating to branch default
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    84
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
40872
07e181ed82ef py3: quote several instances of $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 40369
diff changeset
    85
  $ HGEDITOR=cat hg --config ui.patch="\"$PYTHON\" ../dummypatch.py" --cwd b import --edit ../exported-tip.patch
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
    86
  applying ../exported-tip.patch
21417
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
    87
  second change
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
    88
  
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
    89
  
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
    90
  HG: Enter commit message.  Lines beginning with 'HG:' are removed.
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
    91
  HG: Leave message empty to abort commit.
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
    92
  HG: --
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
    93
  HG: user: someone
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
    94
  HG: branch 'default'
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
    95
  HG: changed a
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    96
  $ cat b/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    97
  line2
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    98
  $ rm -r b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
    99
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   100
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   101
import of plain diff should fail without message
21417
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
   102
(this also tests that editor is invoked, if the patch doesn't contain
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
   103
the commit message, regardless of '--edit')
2513
f22e3e8fd457 import: added tests, fixed bugs found by tests and asak.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   104
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   105
  $ hg clone -r0 a b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   106
  adding changesets
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   107
  adding manifests
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   108
  adding file changes
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   109
  added 1 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 32976
diff changeset
   110
  new changesets 80971e65b431
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   111
  updating to branch default
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   112
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
22250
f3200bf460a8 import: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21553
diff changeset
   113
  $ cat > $TESTTMP/editor.sh <<EOF
f3200bf460a8 import: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21553
diff changeset
   114
  > env | grep HGEDITFORM
f3200bf460a8 import: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21553
diff changeset
   115
  > cat \$1
f3200bf460a8 import: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21553
diff changeset
   116
  > EOF
f3200bf460a8 import: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21553
diff changeset
   117
  $ HGEDITOR="sh $TESTTMP/editor.sh" hg --cwd b import ../diffed-tip.patch
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   118
  applying ../diffed-tip.patch
22250
f3200bf460a8 import: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21553
diff changeset
   119
  HGEDITFORM=import.normal.normal
21417
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
   120
  
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
   121
  
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
   122
  HG: Enter commit message.  Lines beginning with 'HG:' are removed.
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
   123
  HG: Leave message empty to abort commit.
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
   124
  HG: --
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
   125
  HG: user: test
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
   126
  HG: branch 'default'
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
   127
  HG: changed a
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   128
  abort: empty commit message
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45740
diff changeset
   129
  [10]
22278
ffaaa80fa724 import: avoid editor invocation when importing with "--exact" for exact-ness
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22250
diff changeset
   130
ffaaa80fa724 import: avoid editor invocation when importing with "--exact" for exact-ness
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22250
diff changeset
   131
Test avoiding editor invocation at applying the patch with --exact,
ffaaa80fa724 import: avoid editor invocation when importing with "--exact" for exact-ness
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22250
diff changeset
   132
even if commit message is empty
ffaaa80fa724 import: avoid editor invocation when importing with "--exact" for exact-ness
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22250
diff changeset
   133
ffaaa80fa724 import: avoid editor invocation when importing with "--exact" for exact-ness
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22250
diff changeset
   134
  $ echo a >> b/a
ffaaa80fa724 import: avoid editor invocation when importing with "--exact" for exact-ness
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22250
diff changeset
   135
  $ hg --cwd b commit -m ' '
ffaaa80fa724 import: avoid editor invocation when importing with "--exact" for exact-ness
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22250
diff changeset
   136
  $ hg --cwd b tip -T "{node}\n"
ffaaa80fa724 import: avoid editor invocation when importing with "--exact" for exact-ness
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22250
diff changeset
   137
  d8804f3f5396d800812f579c8452796a5993bdb2
ffaaa80fa724 import: avoid editor invocation when importing with "--exact" for exact-ness
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22250
diff changeset
   138
  $ hg --cwd b export -o ../empty-log.diff .
ffaaa80fa724 import: avoid editor invocation when importing with "--exact" for exact-ness
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22250
diff changeset
   139
  $ hg --cwd b update -q -C ".^1"
ffaaa80fa724 import: avoid editor invocation when importing with "--exact" for exact-ness
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22250
diff changeset
   140
  $ hg --cwd b --config extensions.strip= strip -q tip
ffaaa80fa724 import: avoid editor invocation when importing with "--exact" for exact-ness
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22250
diff changeset
   141
  $ HGEDITOR=cat hg --cwd b import --exact ../empty-log.diff
ffaaa80fa724 import: avoid editor invocation when importing with "--exact" for exact-ness
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22250
diff changeset
   142
  applying ../empty-log.diff
ffaaa80fa724 import: avoid editor invocation when importing with "--exact" for exact-ness
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22250
diff changeset
   143
  $ hg --cwd b tip -T "{node}\n"
ffaaa80fa724 import: avoid editor invocation when importing with "--exact" for exact-ness
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22250
diff changeset
   144
  d8804f3f5396d800812f579c8452796a5993bdb2
ffaaa80fa724 import: avoid editor invocation when importing with "--exact" for exact-ness
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22250
diff changeset
   145
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   146
  $ rm -r b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   147
7247
c4461ea8b4c8 patch: fix patched files records in externalpatcher()
Patrick Mezard <pmezard@gmail.com>
parents: 6758
diff changeset
   148
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   149
import of plain diff should be ok with message
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   150
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   151
  $ hg clone -r0 a b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   152
  adding changesets
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   153
  adding manifests
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   154
  adding file changes
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   155
  added 1 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 32976
diff changeset
   156
  new changesets 80971e65b431
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   157
  updating to branch default
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   158
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   159
  $ hg --cwd b import -mpatch ../diffed-tip.patch
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   160
  applying ../diffed-tip.patch
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   161
  $ rm -r b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   162
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   163
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   164
import of plain diff with specific date and user
21417
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
   165
(this also tests that editor is not invoked, if
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
   166
'--message'/'--logfile' is specified and '--edit' is not)
2513
f22e3e8fd457 import: added tests, fixed bugs found by tests and asak.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   167
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   168
  $ hg clone -r0 a b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   169
  adding changesets
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   170
  adding manifests
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   171
  adding file changes
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   172
  added 1 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 32976
diff changeset
   173
  new changesets 80971e65b431
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   174
  updating to branch default
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   175
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   176
  $ hg --cwd b import -mpatch -d '1 0' -u 'user@nowhere.net' ../diffed-tip.patch
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   177
  applying ../diffed-tip.patch
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   178
  $ hg -R b tip -pv
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   179
  changeset:   1:ca68f19f3a40
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   180
  tag:         tip
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   181
  user:        user@nowhere.net
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   182
  date:        Thu Jan 01 00:00:01 1970 +0000
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   183
  files:       a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   184
  description:
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   185
  patch
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   186
  
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   187
  
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   188
  diff -r 80971e65b431 -r ca68f19f3a40 a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   189
  --- a/a	Thu Jan 01 00:00:00 1970 +0000
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   190
  +++ b/a	Thu Jan 01 00:00:01 1970 +0000
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   191
  @@ -1,1 +1,2 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   192
   line 1
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   193
  +line 2
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   194
  
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   195
  $ rm -r b
2513
f22e3e8fd457 import: added tests, fixed bugs found by tests and asak.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   196
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   197
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   198
import of plain diff should be ok with --no-commit
21417
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
   199
(this also tests that editor is not invoked, if '--no-commit' is
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
   200
specified, regardless of '--edit')
5953
e7f1be4bf40a Permitting the import command to accept a --user option.
Jesse Glick <jesse.glick@sun.com>
parents: 5937
diff changeset
   201
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   202
  $ hg clone -r0 a b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   203
  adding changesets
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   204
  adding manifests
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   205
  adding file changes
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   206
  added 1 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 32976
diff changeset
   207
  new changesets 80971e65b431
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   208
  updating to branch default
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   209
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
21417
308aaeb956e2 import: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19513
diff changeset
   210
  $ HGEDITOR=cat hg --cwd b import --no-commit --edit ../diffed-tip.patch
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   211
  applying ../diffed-tip.patch
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   212
  $ hg --cwd b diff --nodates
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   213
  diff -r 80971e65b431 a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   214
  --- a/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   215
  +++ b/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   216
  @@ -1,1 +1,2 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   217
   line 1
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   218
  +line 2
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   219
  $ rm -r b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   220
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   221
12675
c6cdc123f6e4 patch: fails immediately upon malformed hunk
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
   222
import of malformed plain diff should fail
c6cdc123f6e4 patch: fails immediately upon malformed hunk
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
   223
c6cdc123f6e4 patch: fails immediately upon malformed hunk
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
   224
  $ hg clone -r0 a b
c6cdc123f6e4 patch: fails immediately upon malformed hunk
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
   225
  adding changesets
c6cdc123f6e4 patch: fails immediately upon malformed hunk
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
   226
  adding manifests
c6cdc123f6e4 patch: fails immediately upon malformed hunk
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
   227
  adding file changes
c6cdc123f6e4 patch: fails immediately upon malformed hunk
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
   228
  added 1 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 32976
diff changeset
   229
  new changesets 80971e65b431
12675
c6cdc123f6e4 patch: fails immediately upon malformed hunk
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
   230
  updating to branch default
c6cdc123f6e4 patch: fails immediately upon malformed hunk
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
   231
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   232
  $ sed 's/1,1/foo/' < diffed-tip.patch > broken.patch
12675
c6cdc123f6e4 patch: fails immediately upon malformed hunk
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
   233
  $ hg --cwd b import -mpatch ../broken.patch
c6cdc123f6e4 patch: fails immediately upon malformed hunk
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
   234
  applying ../broken.patch
c6cdc123f6e4 patch: fails immediately upon malformed hunk
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
   235
  abort: bad hunk #1
48364
220506bb213e patch: add hint about mangled whitespace on bad patch
Martin von Zweigbergk <martinvonz@google.com>
parents: 48363
diff changeset
   236
  (check that whitespace in the patch has not been mangled)
48363
6a454e7053a1 errors: return more detailed errors when failing to parse or apply patch
Martin von Zweigbergk <martinvonz@google.com>
parents: 48336
diff changeset
   237
  [10]
12675
c6cdc123f6e4 patch: fails immediately upon malformed hunk
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
   238
  $ rm -r b
c6cdc123f6e4 patch: fails immediately upon malformed hunk
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
   239
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   240
hg -R repo import
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   241
put the clone in a subdir - having a directory named "a"
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   242
used to hide a bug.
5937
d8878742a924 Test case for hg import --no-commit
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5853
diff changeset
   243
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   244
  $ mkdir dir
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   245
  $ hg clone -r0 a dir/b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   246
  adding changesets
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   247
  adding manifests
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   248
  adding file changes
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   249
  added 1 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 32976
diff changeset
   250
  new changesets 80971e65b431
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   251
  updating to branch default
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   252
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   253
  $ cd dir
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   254
  $ hg -R b import ../exported-tip.patch
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   255
  applying ../exported-tip.patch
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   256
  $ cd ..
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   257
  $ rm -r dir
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   258
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   259
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   260
import from stdin
4230
c93562fb12cc Fix handling of paths when run outside the repo.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3988
diff changeset
   261
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   262
  $ hg clone -r0 a b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   263
  adding changesets
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   264
  adding manifests
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   265
  adding file changes
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   266
  added 1 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 32976
diff changeset
   267
  new changesets 80971e65b431
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   268
  updating to branch default
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   269
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   270
  $ hg --cwd b import - < exported-tip.patch
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   271
  applying patch from stdin
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   272
  $ rm -r b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   273
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   274
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   275
import two patches in one stream
2513
f22e3e8fd457 import: added tests, fixed bugs found by tests and asak.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   276
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   277
  $ hg init b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   278
  $ hg --cwd a export 0:tip | hg --cwd b import -
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   279
  applying patch from stdin
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   280
  $ hg --cwd a id
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   281
  1d4bd90af0e4 tip
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   282
  $ hg --cwd b id
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   283
  1d4bd90af0e4 tip
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   284
  $ rm -r b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   285
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   286
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   287
override commit message
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   288
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   289
  $ hg clone -r0 a b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   290
  adding changesets
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   291
  adding manifests
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   292
  adding file changes
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   293
  added 1 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 32976
diff changeset
   294
  new changesets 80971e65b431
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   295
  updating to branch default
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   296
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   297
  $ hg --cwd b import -m 'override' - < exported-tip.patch
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   298
  applying patch from stdin
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   299
  $ hg --cwd b tip | grep override
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   300
  summary:     override
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   301
  $ rm -r b
10384
832f35386067 import: import each patch in a file or stream as a separate change
Brendan Cully <brendan@kublai.com>
parents: 9594
diff changeset
   302
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   303
  $ cat > mkmsg.py <<EOF
40369
ef6cab7930b3 py3: fix module imports in tests, as flagged by test-check-module-imports.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 39707
diff changeset
   304
  > import email.message
ef6cab7930b3 py3: fix module imports in tests, as flagged by test-check-module-imports.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 39707
diff changeset
   305
  > import sys
37466
abd9f5ec1d82 py3: use lower-cased module 'email.message' in test-import.t
Yuya Nishihara <yuya@tcha.org>
parents: 37457
diff changeset
   306
  > msg = email.message.Message()
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   307
  > patch = open(sys.argv[1], 'rb').read()
37467
9bf65d1b43a6 py3: fix string issues of email message in test-import.t
Yuya Nishihara <yuya@tcha.org>
parents: 37466
diff changeset
   308
  > msg.set_payload(b'email commit message\n' + patch)
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   309
  > msg['Subject'] = 'email patch'
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   310
  > msg['From'] = 'email patcher'
37467
9bf65d1b43a6 py3: fix string issues of email message in test-import.t
Yuya Nishihara <yuya@tcha.org>
parents: 37466
diff changeset
   311
  > open(sys.argv[2], 'wb').write(bytes(msg))
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   312
  > EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   313
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   314
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   315
plain diff in email, subject, message body
2513
f22e3e8fd457 import: added tests, fixed bugs found by tests and asak.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   316
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   317
  $ hg clone -r0 a b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   318
  adding changesets
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   319
  adding manifests
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   320
  adding file changes
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   321
  added 1 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 32976
diff changeset
   322
  new changesets 80971e65b431
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   323
  updating to branch default
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   324
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 39405
diff changeset
   325
  $ "$PYTHON" mkmsg.py diffed-tip.patch msg.patch
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   326
  $ hg --cwd b import ../msg.patch
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   327
  applying ../msg.patch
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   328
  $ hg --cwd b tip | grep email
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   329
  user:        email patcher
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   330
  summary:     email patch
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   331
  $ rm -r b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   332
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   333
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   334
plain diff in email, no subject, message body
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   335
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   336
  $ hg clone -r0 a b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   337
  adding changesets
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   338
  adding manifests
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   339
  adding file changes
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   340
  added 1 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 32976
diff changeset
   341
  new changesets 80971e65b431
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   342
  updating to branch default
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   343
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   344
  $ grep -v '^Subject:' msg.patch | hg --cwd b import -
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   345
  applying patch from stdin
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   346
  $ rm -r b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   347
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   348
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   349
plain diff in email, subject, no message body
2513
f22e3e8fd457 import: added tests, fixed bugs found by tests and asak.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   350
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   351
  $ hg clone -r0 a b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   352
  adding changesets
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   353
  adding manifests
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   354
  adding file changes
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   355
  added 1 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 32976
diff changeset
   356
  new changesets 80971e65b431
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   357
  updating to branch default
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   358
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   359
  $ grep -v '^email ' msg.patch | hg --cwd b import -
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   360
  applying patch from stdin
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   361
  $ rm -r b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   362
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   363
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   364
plain diff in email, no subject, no message body, should fail
2513
f22e3e8fd457 import: added tests, fixed bugs found by tests and asak.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   365
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   366
  $ hg clone -r0 a b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   367
  adding changesets
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   368
  adding manifests
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   369
  adding file changes
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   370
  added 1 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 32976
diff changeset
   371
  new changesets 80971e65b431
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   372
  updating to branch default
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   373
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
50725
7e5be4a7cda7 tests: use grep -E instead of obsolescent egrep
Mads Kiilerich <mads@kiilerich.com>
parents: 48876
diff changeset
   374
  $ grep -E -v '^(Subject|email)' msg.patch | hg --cwd b import -
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   375
  applying patch from stdin
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   376
  abort: empty commit message
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45740
diff changeset
   377
  [10]
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   378
  $ rm -r b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   379
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   380
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   381
hg export in email, should use patch header
2513
f22e3e8fd457 import: added tests, fixed bugs found by tests and asak.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   382
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   383
  $ hg clone -r0 a b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   384
  adding changesets
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   385
  adding manifests
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   386
  adding file changes
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   387
  added 1 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 32976
diff changeset
   388
  new changesets 80971e65b431
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   389
  updating to branch default
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   390
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 39405
diff changeset
   391
  $ "$PYTHON" mkmsg.py exported-tip.patch msg.patch
15522
cf0f3cb8a332 tests: don't use stdout redirection for test data
Mads Kiilerich <mads@kiilerich.com>
parents: 15462
diff changeset
   392
  $ cat msg.patch | hg --cwd b import -
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   393
  applying patch from stdin
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   394
  $ hg --cwd b tip | grep second
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   395
  summary:     second change
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   396
  $ rm -r b
2513
f22e3e8fd457 import: added tests, fixed bugs found by tests and asak.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   397
43097
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   398
hg email --plain, should read X-Mercurial-Node header
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   399
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   400
  $ cat >> a/.hg/hgrc << EOF
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   401
  > [extensions]
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   402
  > patchbomb =
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   403
  > [email]
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   404
  > from = foo
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   405
  > cc = foo
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   406
  > to = bar
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   407
  > EOF
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   408
  $ hg --cwd a email -m ../tip-plain.mbox --plain --date '1970-1-1 0:1' tip
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   409
  this patch series consists of 1 patches.
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   410
  
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   411
  
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   412
  sending [PATCH] second change ...
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   413
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   414
  $ hg clone -r0 a b -q
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   415
  $ hg --cwd b import --debug ../tip-plain.mbox
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   416
  applying ../tip-plain.mbox
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   417
  Node ID: 1d4bd90af0e43687763d158dfa83ff2a4b6c0c32
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   418
  Subject: second change
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   419
  From: foo
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   420
  Content-Type: text/plain
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   421
  found patch at byte 0
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   422
  message:
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   423
  second change
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   424
  patching file a
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   425
  committing files:
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   426
  a
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   427
  committing manifest
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   428
  committing changelog
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   429
  created de620f6fe949
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   430
  updating the branch cache
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   431
  $ hg --cwd b tip
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   432
  changeset:   1:de620f6fe949
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   433
  tag:         tip
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   434
  user:        foo
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   435
  date:        Thu Jan 01 00:00:00 1970 +0000
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   436
  summary:     second change
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   437
  
43725
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   438
  $ hg --cwd b phase tip
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   439
  1: draft
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   440
  $ rm -r b
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   441
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   442
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   443
hg import --secret
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   444
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   445
  $ hg clone -r0 a b -q
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   446
  $ hg --cwd b import --no-commit --secret ../exported-tip.patch
45740
d1cabce5ef05 import: leverage cmdutil.check_incompatible_arguments()
Martin von Zweigbergk <martinvonz@google.com>
parents: 44724
diff changeset
   447
  abort: cannot specify both --no-commit and --secret
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45740
diff changeset
   448
  [10]
43725
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   449
  $ hg --cwd b import --secret ../exported-tip.patch
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   450
  applying ../exported-tip.patch
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   451
  $ hg --cwd b diff -c . --nodates
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   452
  diff -r 80971e65b431 -r 1d4bd90af0e4 a
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   453
  --- a/a
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   454
  +++ b/a
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   455
  @@ -1,1 +1,2 @@
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   456
   line 1
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   457
  +line 2
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   458
  $ hg --cwd b phase
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   459
  1: secret
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   460
  $ hg --cwd b --config extensions.strip= strip 1 --no-backup --quiet
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   461
  $ HGEDITOR=cat hg --cwd b import --secret --edit ../exported-tip.patch
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   462
  applying ../exported-tip.patch
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   463
  second change
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   464
  
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   465
  
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   466
  HG: Enter commit message.  Lines beginning with 'HG:' are removed.
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   467
  HG: Leave message empty to abort commit.
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   468
  HG: --
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   469
  HG: user: someone
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   470
  HG: branch 'default'
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   471
  HG: changed a
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   472
  $ hg --cwd b diff -c . --nodates
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   473
  diff -r 80971e65b431 -r 1d4bd90af0e4 a
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   474
  --- a/a
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   475
  +++ b/a
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   476
  @@ -1,1 +1,2 @@
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   477
   line 1
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   478
  +line 2
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   479
  $ hg --cwd b phase
71dbd6f6fcb8 import: add a --secret option
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 43097
diff changeset
   480
  1: secret
44330
b339faf3f843 import: don't ignore `--secret` when `--bypass` is specified
Matt Harbison <matt_harbison@yahoo.com>
parents: 43725
diff changeset
   481
  $ hg --cwd b --config extensions.strip= strip 1 --no-backup --quiet
b339faf3f843 import: don't ignore `--secret` when `--bypass` is specified
Matt Harbison <matt_harbison@yahoo.com>
parents: 43725
diff changeset
   482
  $ hg --cwd b import --bypass --secret ../exported-tip.patch
b339faf3f843 import: don't ignore `--secret` when `--bypass` is specified
Matt Harbison <matt_harbison@yahoo.com>
parents: 43725
diff changeset
   483
  applying ../exported-tip.patch
b339faf3f843 import: don't ignore `--secret` when `--bypass` is specified
Matt Harbison <matt_harbison@yahoo.com>
parents: 43725
diff changeset
   484
  $ hg --cwd b phase -r tip
b339faf3f843 import: don't ignore `--secret` when `--bypass` is specified
Matt Harbison <matt_harbison@yahoo.com>
parents: 43725
diff changeset
   485
  1: secret
b339faf3f843 import: don't ignore `--secret` when `--bypass` is specified
Matt Harbison <matt_harbison@yahoo.com>
parents: 43725
diff changeset
   486
  $ hg --cwd b --config extensions.strip= strip 1 --no-backup --quiet
43097
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   487
  $ rm -r b
27c4f93d07a9 import: read X-Mercurial-Node email header to determine nodeid
Denis Laxalde <denis@laxalde.org>
parents: 43066
diff changeset
   488
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   489
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   490
subject: duplicate detection, removal of [PATCH]
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   491
The '---' tests the gitsendmail handling without proper mail headers
2513
f22e3e8fd457 import: added tests, fixed bugs found by tests and asak.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   492
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   493
  $ cat > mkmsg2.py <<EOF
40369
ef6cab7930b3 py3: fix module imports in tests, as flagged by test-check-module-imports.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 39707
diff changeset
   494
  > import email.message
ef6cab7930b3 py3: fix module imports in tests, as flagged by test-check-module-imports.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 39707
diff changeset
   495
  > import sys
37466
abd9f5ec1d82 py3: use lower-cased module 'email.message' in test-import.t
Yuya Nishihara <yuya@tcha.org>
parents: 37457
diff changeset
   496
  > msg = email.message.Message()
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   497
  > patch = open(sys.argv[1], 'rb').read()
37467
9bf65d1b43a6 py3: fix string issues of email message in test-import.t
Yuya Nishihara <yuya@tcha.org>
parents: 37466
diff changeset
   498
  > msg.set_payload(b'email patch\n\nnext line\n---\n' + patch)
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   499
  > msg['Subject'] = '[PATCH] email patch'
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   500
  > msg['From'] = 'email patcher'
37467
9bf65d1b43a6 py3: fix string issues of email message in test-import.t
Yuya Nishihara <yuya@tcha.org>
parents: 37466
diff changeset
   501
  > open(sys.argv[2], 'wb').write(bytes(msg))
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   502
  > EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   503
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   504
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   505
plain diff in email, [PATCH] subject, message body with subject
2513
f22e3e8fd457 import: added tests, fixed bugs found by tests and asak.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   506
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   507
  $ hg clone -r0 a b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   508
  adding changesets
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   509
  adding manifests
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   510
  adding file changes
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   511
  added 1 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 32976
diff changeset
   512
  new changesets 80971e65b431
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   513
  updating to branch default
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   514
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 39405
diff changeset
   515
  $ "$PYTHON" mkmsg2.py diffed-tip.patch msg.patch
15522
cf0f3cb8a332 tests: don't use stdout redirection for test data
Mads Kiilerich <mads@kiilerich.com>
parents: 15462
diff changeset
   516
  $ cat msg.patch | hg --cwd b import -
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   517
  applying patch from stdin
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   518
  $ hg --cwd b tip --template '{desc}\n'
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   519
  email patch
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   520
  
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   521
  next line
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   522
  $ rm -r b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   523
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   524
12399
4fee1fd3de9a tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents: 12366
diff changeset
   525
Issue963: Parent of working dir incorrect after import of multiple
4fee1fd3de9a tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents: 12366
diff changeset
   526
patches and rollback
4fee1fd3de9a tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents: 12366
diff changeset
   527
4fee1fd3de9a tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents: 12366
diff changeset
   528
We weren't backing up the correct dirstate file when importing many
4fee1fd3de9a tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents: 12366
diff changeset
   529
patches: import patch1 patch2; rollback
4779
a7915f79d4cc Added import test for [PATCH] subject and message body with subject
Thomas Arendsen Hein <thomas@intevation.de>
parents: 4230
diff changeset
   530
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   531
  $ echo line 3 >> a/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   532
  $ hg --cwd a ci -m'third change'
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   533
  $ hg --cwd a export -o '../patch%R' 1 2
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   534
  $ hg clone -qr0 a b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   535
  $ hg --cwd b parents --template 'parent: {rev}\n'
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   536
  parent: 0
15194
0705f2ac79d6 import: simplify status reporting logic (and make it more I18N-friendly)
Greg Ward <greg@gerg.ca>
parents: 14452
diff changeset
   537
  $ hg --cwd b import -v ../patch1 ../patch2
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   538
  applying ../patch1
15194
0705f2ac79d6 import: simplify status reporting logic (and make it more I18N-friendly)
Greg Ward <greg@gerg.ca>
parents: 14452
diff changeset
   539
  patching file a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 22947
diff changeset
   540
  committing files:
15194
0705f2ac79d6 import: simplify status reporting logic (and make it more I18N-friendly)
Greg Ward <greg@gerg.ca>
parents: 14452
diff changeset
   541
  a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 22947
diff changeset
   542
  committing manifest
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 22947
diff changeset
   543
  committing changelog
15194
0705f2ac79d6 import: simplify status reporting logic (and make it more I18N-friendly)
Greg Ward <greg@gerg.ca>
parents: 14452
diff changeset
   544
  created 1d4bd90af0e4
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   545
  applying ../patch2
15194
0705f2ac79d6 import: simplify status reporting logic (and make it more I18N-friendly)
Greg Ward <greg@gerg.ca>
parents: 14452
diff changeset
   546
  patching file a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 22947
diff changeset
   547
  committing files:
15194
0705f2ac79d6 import: simplify status reporting logic (and make it more I18N-friendly)
Greg Ward <greg@gerg.ca>
parents: 14452
diff changeset
   548
  a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 22947
diff changeset
   549
  committing manifest
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 22947
diff changeset
   550
  committing changelog
15194
0705f2ac79d6 import: simplify status reporting logic (and make it more I18N-friendly)
Greg Ward <greg@gerg.ca>
parents: 14452
diff changeset
   551
  created 6d019af21222
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   552
  $ hg --cwd b rollback
15198
62dc0e7ab092 import: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 15194
diff changeset
   553
  repository tip rolled back to revision 0 (undo import)
62dc0e7ab092 import: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 15194
diff changeset
   554
  working directory now based on revision 0
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   555
  $ hg --cwd b parents --template 'parent: {rev}\n'
15198
62dc0e7ab092 import: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 15194
diff changeset
   556
  parent: 0
26631
e077ce385609 localrepo: restore dirstate to one before rollbacking if not parent-gone
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26562
diff changeset
   557
e077ce385609 localrepo: restore dirstate to one before rollbacking if not parent-gone
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26562
diff changeset
   558
Test that "hg rollback" doesn't restore dirstate to one at the
30332
318a24b52eeb spelling: fixes of non-dictionary words
Mads Kiilerich <madski@unity3d.com>
parents: 30078
diff changeset
   559
beginning of the rolled back transaction in not-"parent-gone" case.
26631
e077ce385609 localrepo: restore dirstate to one before rollbacking if not parent-gone
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26562
diff changeset
   560
e077ce385609 localrepo: restore dirstate to one before rollbacking if not parent-gone
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26562
diff changeset
   561
invoking pretxncommit hook will cause marking '.hg/dirstate' as a file
30332
318a24b52eeb spelling: fixes of non-dictionary words
Mads Kiilerich <madski@unity3d.com>
parents: 30078
diff changeset
   562
to be restored when rolling back, after DirstateTransactionPlan (see wiki
26631
e077ce385609 localrepo: restore dirstate to one before rollbacking if not parent-gone
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26562
diff changeset
   563
page for detail).
e077ce385609 localrepo: restore dirstate to one before rollbacking if not parent-gone
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26562
diff changeset
   564
e077ce385609 localrepo: restore dirstate to one before rollbacking if not parent-gone
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26562
diff changeset
   565
  $ hg --cwd b branch -q foobar
e077ce385609 localrepo: restore dirstate to one before rollbacking if not parent-gone
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26562
diff changeset
   566
  $ hg --cwd b commit -m foobar
e077ce385609 localrepo: restore dirstate to one before rollbacking if not parent-gone
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26562
diff changeset
   567
  $ hg --cwd b update 0 -q
e077ce385609 localrepo: restore dirstate to one before rollbacking if not parent-gone
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26562
diff changeset
   568
  $ hg --cwd b import ../patch1 ../patch2 --config hooks.pretxncommit=true
e077ce385609 localrepo: restore dirstate to one before rollbacking if not parent-gone
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26562
diff changeset
   569
  applying ../patch1
e077ce385609 localrepo: restore dirstate to one before rollbacking if not parent-gone
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26562
diff changeset
   570
  applying ../patch2
e077ce385609 localrepo: restore dirstate to one before rollbacking if not parent-gone
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26562
diff changeset
   571
  $ hg --cwd b update -q 1
e077ce385609 localrepo: restore dirstate to one before rollbacking if not parent-gone
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26562
diff changeset
   572
  $ hg --cwd b rollback -q
e077ce385609 localrepo: restore dirstate to one before rollbacking if not parent-gone
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26562
diff changeset
   573
  $ hg --cwd b parents --template 'parent: {rev}\n'
e077ce385609 localrepo: restore dirstate to one before rollbacking if not parent-gone
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26562
diff changeset
   574
  parent: 1
e077ce385609 localrepo: restore dirstate to one before rollbacking if not parent-gone
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26562
diff changeset
   575
26750
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   576
  $ hg --cwd b update -q -C 0
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   577
  $ hg --cwd b --config extensions.strip= strip -q 1
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   578
30332
318a24b52eeb spelling: fixes of non-dictionary words
Mads Kiilerich <madski@unity3d.com>
parents: 30078
diff changeset
   579
Test visibility of in-memory dirstate changes inside transaction to
26750
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   580
external process
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   581
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   582
  $ echo foo > a/foo
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   583
  $ hg --cwd a commit -A -m 'adding foo' foo
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   584
  $ hg --cwd a export -o '../patch%R' 3
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   585
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   586
  $ cat > $TESTTMP/checkvisibility.sh <<EOF
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   587
  > echo "===="
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   588
  > hg parents --template "VISIBLE {rev}:{node|short}\n"
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   589
  > hg status -amr
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   590
  > # test that pending changes are hidden
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   591
  > unset HG_PENDING
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   592
  > hg parents --template "ACTUAL  {rev}:{node|short}\n"
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   593
  > hg status -amr
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   594
  > echo "===="
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   595
  > EOF
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   596
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   597
== test visibility to external editor
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   598
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   599
  $ (cd b && sh "$TESTTMP/checkvisibility.sh")
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   600
  ====
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   601
  VISIBLE 0:80971e65b431
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   602
  ACTUAL  0:80971e65b431
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   603
  ====
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   604
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   605
  $ HGEDITOR="sh $TESTTMP/checkvisibility.sh" hg --cwd b import -v --edit ../patch1 ../patch2 ../patch3
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   606
  applying ../patch1
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   607
  patching file a
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   608
  ====
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   609
  VISIBLE 0:80971e65b431
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   610
  M a
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   611
  ACTUAL  0:80971e65b431
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   612
  M a
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   613
  ====
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   614
  committing files:
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   615
  a
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   616
  committing manifest
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   617
  committing changelog
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   618
  created 1d4bd90af0e4
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   619
  applying ../patch2
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   620
  patching file a
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   621
  ====
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   622
  VISIBLE 1:1d4bd90af0e4
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   623
  M a
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   624
  ACTUAL  0:80971e65b431
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   625
  M a
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   626
  ====
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   627
  committing files:
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   628
  a
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   629
  committing manifest
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   630
  committing changelog
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   631
  created 6d019af21222
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   632
  applying ../patch3
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   633
  patching file foo
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   634
  adding foo
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   635
  ====
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   636
  VISIBLE 2:6d019af21222
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   637
  A foo
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   638
  ACTUAL  0:80971e65b431
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   639
  M a
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   640
  ====
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   641
  committing files:
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   642
  foo
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   643
  committing manifest
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   644
  committing changelog
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   645
  created 55e3f75b2378
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   646
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   647
  $ hg --cwd b rollback -q
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   648
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   649
(content of file "a" is already changed and it should be recognized as
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   650
"M", even though dirstate is restored to one before "hg import")
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   651
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   652
  $ (cd b && sh "$TESTTMP/checkvisibility.sh")
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   653
  ====
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   654
  VISIBLE 0:80971e65b431
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   655
  M a
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   656
  ACTUAL  0:80971e65b431
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   657
  M a
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   658
  ====
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   659
  $ hg --cwd b revert --no-backup a
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   660
  $ rm -f b/foo
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26631
diff changeset
   661
26751
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   662
== test visibility to precommit external hook
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   663
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   664
  $ cat >> b/.hg/hgrc <<EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   665
  > [hooks]
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   666
  > precommit.visibility = sh $TESTTMP/checkvisibility.sh
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   667
  > EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   668
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   669
  $ (cd b && sh "$TESTTMP/checkvisibility.sh")
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   670
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   671
  VISIBLE 0:80971e65b431
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   672
  ACTUAL  0:80971e65b431
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   673
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   674
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   675
  $ hg --cwd b import ../patch1 ../patch2 ../patch3
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   676
  applying ../patch1
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   677
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   678
  VISIBLE 0:80971e65b431
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   679
  M a
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   680
  ACTUAL  0:80971e65b431
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   681
  M a
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   682
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   683
  applying ../patch2
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   684
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   685
  VISIBLE 1:1d4bd90af0e4
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   686
  M a
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   687
  ACTUAL  0:80971e65b431
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   688
  M a
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   689
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   690
  applying ../patch3
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   691
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   692
  VISIBLE 2:6d019af21222
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   693
  A foo
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   694
  ACTUAL  0:80971e65b431
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   695
  M a
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   696
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   697
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   698
  $ hg --cwd b rollback -q
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   699
  $ (cd b && sh "$TESTTMP/checkvisibility.sh")
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   700
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   701
  VISIBLE 0:80971e65b431
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   702
  M a
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   703
  ACTUAL  0:80971e65b431
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   704
  M a
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   705
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   706
  $ hg --cwd b revert --no-backup a
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   707
  $ rm -f b/foo
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   708
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   709
  $ cat >> b/.hg/hgrc <<EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   710
  > [hooks]
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   711
  > precommit.visibility =
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   712
  > EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   713
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   714
== test visibility to pretxncommit external hook
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   715
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   716
  $ cat >> b/.hg/hgrc <<EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   717
  > [hooks]
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   718
  > pretxncommit.visibility = sh $TESTTMP/checkvisibility.sh
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   719
  > EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   720
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   721
  $ (cd b && sh "$TESTTMP/checkvisibility.sh")
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   722
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   723
  VISIBLE 0:80971e65b431
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   724
  ACTUAL  0:80971e65b431
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   725
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   726
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   727
  $ hg --cwd b import ../patch1 ../patch2 ../patch3
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   728
  applying ../patch1
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   729
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   730
  VISIBLE 0:80971e65b431
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   731
  M a
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   732
  ACTUAL  0:80971e65b431
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   733
  M a
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   734
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   735
  applying ../patch2
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   736
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   737
  VISIBLE 1:1d4bd90af0e4
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   738
  M a
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   739
  ACTUAL  0:80971e65b431
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   740
  M a
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   741
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   742
  applying ../patch3
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   743
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   744
  VISIBLE 2:6d019af21222
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   745
  A foo
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   746
  ACTUAL  0:80971e65b431
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   747
  M a
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   748
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   749
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   750
  $ hg --cwd b rollback -q
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   751
  $ (cd b && sh "$TESTTMP/checkvisibility.sh")
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   752
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   753
  VISIBLE 0:80971e65b431
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   754
  M a
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   755
  ACTUAL  0:80971e65b431
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   756
  M a
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   757
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   758
  $ hg --cwd b revert --no-backup a
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   759
  $ rm -f b/foo
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   760
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   761
  $ cat >> b/.hg/hgrc <<EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   762
  > [hooks]
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   763
  > pretxncommit.visibility =
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   764
  > EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26750
diff changeset
   765
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   766
  $ rm -r b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   767
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   768
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   769
importing a patch in a subdirectory failed at the commit stage
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   770
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   771
  $ echo line 2 >> a/d1/d2/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   772
  $ hg --cwd a ci -u someoneelse -d '1 0' -m'subdir change'
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   773
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   774
hg import in a subdirectory
4779
a7915f79d4cc Added import test for [PATCH] subject and message body with subject
Thomas Arendsen Hein <thomas@intevation.de>
parents: 4230
diff changeset
   775
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   776
  $ hg clone -r0 a b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   777
  adding changesets
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   778
  adding manifests
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   779
  adding file changes
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   780
  added 1 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 32976
diff changeset
   781
  new changesets 80971e65b431
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   782
  updating to branch default
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   783
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
12366
c01dc9087d9a tests: drop a bunch of sed calls from unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
   784
  $ hg --cwd a export tip > tmp
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   785
  $ sed -e 's/d1\/d2\///' < tmp > subdir-tip.patch
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   786
  $ dir=`pwd`
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   787
  $ cd b/d1/d2 2>&1 > /dev/null
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   788
  $ hg import  ../../../subdir-tip.patch
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   789
  applying ../../../subdir-tip.patch
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   790
  $ cd "$dir"
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   791
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   792
message should be 'subdir change'
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   793
committer should be 'someoneelse'
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   794
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   795
  $ hg --cwd b tip
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   796
  changeset:   1:3577f5aea227
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   797
  tag:         tip
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   798
  user:        someoneelse
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   799
  date:        Thu Jan 01 00:00:01 1970 +0000
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   800
  summary:     subdir change
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   801
  
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   802
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   803
should be empty
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   804
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   805
  $ hg --cwd b status
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   806
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   808
Test fuzziness (ambiguous patch location, fuzz=2)
4779
a7915f79d4cc Added import test for [PATCH] subject and message body with subject
Thomas Arendsen Hein <thomas@intevation.de>
parents: 4230
diff changeset
   809
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   810
  $ hg init fuzzy
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   811
  $ cd fuzzy
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   812
  $ echo line1 > a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   813
  $ echo line0 >> a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   814
  $ echo line3 >> a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   815
  $ hg ci -Am adda
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   816
  adding a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   817
  $ echo line1 > a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   818
  $ echo line2 >> a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   819
  $ echo line0 >> a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   820
  $ echo line3 >> a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   821
  $ hg ci -m change a
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   822
  $ hg export tip > fuzzy-tip.patch
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   823
  $ hg up -C 0
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   824
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   825
  $ echo line1 > a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   826
  $ echo line0 >> a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   827
  $ echo line1 >> a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   828
  $ echo line0 >> a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   829
  $ hg ci -m brancha
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   830
  created new head
25631
2748bf78a5bf patch: add fuzz config flag (issue4697)
Matt Mackall <mpm@selenic.com>
parents: 25397
diff changeset
   831
  $ hg import --config patch.fuzz=0 -v fuzzy-tip.patch
2748bf78a5bf patch: add fuzz config flag (issue4697)
Matt Mackall <mpm@selenic.com>
parents: 25397
diff changeset
   832
  applying fuzzy-tip.patch
2748bf78a5bf patch: add fuzz config flag (issue4697)
Matt Mackall <mpm@selenic.com>
parents: 25397
diff changeset
   833
  patching file a
2748bf78a5bf patch: add fuzz config flag (issue4697)
Matt Mackall <mpm@selenic.com>
parents: 25397
diff changeset
   834
  Hunk #1 FAILED at 0
2748bf78a5bf patch: add fuzz config flag (issue4697)
Matt Mackall <mpm@selenic.com>
parents: 25397
diff changeset
   835
  1 out of 1 hunks FAILED -- saving rejects to file a.rej
2748bf78a5bf patch: add fuzz config flag (issue4697)
Matt Mackall <mpm@selenic.com>
parents: 25397
diff changeset
   836
  abort: patch failed to apply
48363
6a454e7053a1 errors: return more detailed errors when failing to parse or apply patch
Martin von Zweigbergk <martinvonz@google.com>
parents: 48336
diff changeset
   837
  [20]
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   838
  $ hg import --no-commit -v fuzzy-tip.patch
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   839
  applying fuzzy-tip.patch
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   840
  patching file a
16124
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
   841
  Hunk #1 succeeded at 2 with fuzz 1 (offset 0 lines).
15194
0705f2ac79d6 import: simplify status reporting logic (and make it more I18N-friendly)
Greg Ward <greg@gerg.ca>
parents: 14452
diff changeset
   842
  applied to working directory
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   843
  $ hg revert -a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   844
  reverting a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   845
37815
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   846
Test --exact failure
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   847
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   848
  $ sed 's/^# Parent .*/# Parent '"`hg log -r. -T '{node}'`"'/' \
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   849
  > < fuzzy-tip.patch > fuzzy-reparent.patch
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   850
  $ hg import --config patch.fuzz=0 --exact fuzzy-reparent.patch
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   851
  applying fuzzy-reparent.patch
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   852
  patching file a
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   853
  Hunk #1 FAILED at 0
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   854
  1 out of 1 hunks FAILED -- saving rejects to file a.rej
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   855
  abort: patch failed to apply
48363
6a454e7053a1 errors: return more detailed errors when failing to parse or apply patch
Martin von Zweigbergk <martinvonz@google.com>
parents: 48336
diff changeset
   856
  [20]
37815
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   857
  $ hg up -qC
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   858
  $ hg import --config patch.fuzz=2 --exact fuzzy-reparent.patch
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   859
  applying fuzzy-reparent.patch
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   860
  patching file a
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   861
  Hunk #1 succeeded at 2 with fuzz 1 (offset 0 lines).
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   862
  transaction abort!
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   863
  rollback completed
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   864
  abort: patch is damaged or loses information
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   865
  [255]
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   866
  $ hg up -qC
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   867
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   868
  $ grep '^#' fuzzy-tip.patch > empty.patch
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   869
  $ cat <<'EOF' >> empty.patch
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   870
  > change
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   871
  > 
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   872
  > diff -r bb90ef1daa38 -r 0e9b883378d4 a
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   873
  > --- a/a	Thu Jan 01 00:00:00 1970 +0000
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   874
  > --- b/a	Thu Jan 01 00:00:00 1970 +0000
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   875
  > EOF
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   876
  $ hg import --exact empty.patch
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   877
  applying empty.patch
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   878
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   879
  abort: patch is damaged or loses information
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   880
  [255]
32a75a8a5b0f import: fix crash on --exact check of empty commit (issue5702)
Yuya Nishihara <yuya@tcha.org>
parents: 37573
diff changeset
   881
  $ hg up -qC
12913
0e0a52bd58f9 import: --no-commit should update .hg/last-message.txt
Steve Borho <steve@borho.org>
parents: 12847
diff changeset
   882
0e0a52bd58f9 import: --no-commit should update .hg/last-message.txt
Steve Borho <steve@borho.org>
parents: 12847
diff changeset
   883
import with --no-commit should have written .hg/last-message.txt
0e0a52bd58f9 import: --no-commit should update .hg/last-message.txt
Steve Borho <steve@borho.org>
parents: 12847
diff changeset
   884
12945
99f7dc8def34 test-import: workaround for missing newline is no longer needed
Mads Kiilerich <mads@kiilerich.com>
parents: 12914
diff changeset
   885
  $ cat .hg/last-message.txt
99f7dc8def34 test-import: workaround for missing newline is no longer needed
Mads Kiilerich <mads@kiilerich.com>
parents: 12914
diff changeset
   886
  change (no-eol)
12913
0e0a52bd58f9 import: --no-commit should update .hg/last-message.txt
Steve Borho <steve@borho.org>
parents: 12847
diff changeset
   887
0e0a52bd58f9 import: --no-commit should update .hg/last-message.txt
Steve Borho <steve@borho.org>
parents: 12847
diff changeset
   888
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   889
test fuzziness with eol=auto
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   890
14125
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   891
  $ hg --config patch.eol=auto import --no-commit -v fuzzy-tip.patch
2852843947da tests: do not export several times the same patch/diff in test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13446
diff changeset
   892
  applying fuzzy-tip.patch
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   893
  patching file a
16124
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
   894
  Hunk #1 succeeded at 2 with fuzz 1 (offset 0 lines).
15194
0705f2ac79d6 import: simplify status reporting logic (and make it more I18N-friendly)
Greg Ward <greg@gerg.ca>
parents: 14452
diff changeset
   895
  applied to working directory
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   896
  $ cd ..
5548
1fb38ef1f113 test-import: test fuzziness, ambiguous patch locations
Patrick Mezard <pmezard@gmail.com>
parents: 5418
diff changeset
   897
1fb38ef1f113 test-import: test fuzziness, ambiguous patch locations
Patrick Mezard <pmezard@gmail.com>
parents: 5418
diff changeset
   898
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   899
Test hunk touching empty files (issue906)
5852
03ce5a919ae3 patch: handle empty vs no file in git patches (issue906)
Patrick Mezard <pmezard@gmail.com>
parents: 5548
diff changeset
   900
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   901
  $ hg init empty
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   902
  $ cd empty
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   903
  $ touch a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   904
  $ touch b1
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   905
  $ touch c1
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   906
  $ echo d > d
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   907
  $ hg ci -Am init
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   908
  adding a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   909
  adding b1
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   910
  adding c1
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   911
  adding d
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   912
  $ echo a > a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   913
  $ echo b > b1
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   914
  $ hg mv b1 b2
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   915
  $ echo c > c1
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   916
  $ hg copy c1 c2
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   917
  $ rm d
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   918
  $ touch d
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   919
  $ hg diff --git
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   920
  diff --git a/a b/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   921
  --- a/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   922
  +++ b/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   923
  @@ -0,0 +1,1 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   924
  +a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   925
  diff --git a/b1 b/b2
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   926
  rename from b1
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   927
  rename to b2
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   928
  --- a/b1
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   929
  +++ b/b2
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   930
  @@ -0,0 +1,1 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   931
  +b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   932
  diff --git a/c1 b/c1
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   933
  --- a/c1
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   934
  +++ b/c1
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   935
  @@ -0,0 +1,1 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   936
  +c
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   937
  diff --git a/c1 b/c2
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   938
  copy from c1
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   939
  copy to c2
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   940
  --- a/c1
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   941
  +++ b/c2
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   942
  @@ -0,0 +1,1 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   943
  +c
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   944
  diff --git a/d b/d
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   945
  --- a/d
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   946
  +++ b/d
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   947
  @@ -1,1 +0,0 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   948
  -d
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   949
  $ hg ci -m empty
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   950
  $ hg export --git tip > empty.diff
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   951
  $ hg up -C 0
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   952
  4 files updated, 0 files merged, 2 files removed, 0 files unresolved
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   953
  $ hg import empty.diff
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   954
  applying empty.diff
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   955
  $ for name in a b1 b2 c1 c2 d; do
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   956
  >   echo % $name file
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   957
  >   test -f $name && cat $name
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   958
  >   done
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   959
  % a file
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   960
  a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   961
  % b1 file
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   962
  % b2 file
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   963
  b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   964
  % c1 file
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   965
  c
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   966
  % c2 file
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   967
  c
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   968
  % d file
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   969
  $ cd ..
5852
03ce5a919ae3 patch: handle empty vs no file in git patches (issue906)
Patrick Mezard <pmezard@gmail.com>
parents: 5548
diff changeset
   970
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   971
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   972
Test importing a patch ending with a binary file removal
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   973
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   974
  $ hg init binaryremoval
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   975
  $ cd binaryremoval
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   976
  $ echo a > a
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 39405
diff changeset
   977
  $ "$PYTHON" -c "open('b', 'wb').write(b'a\x00b')"
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   978
  $ hg ci -Am addall
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   979
  adding a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   980
  adding b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   981
  $ hg rm a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   982
  $ hg rm b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   983
  $ hg st
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   984
  R a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   985
  R b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   986
  $ hg ci -m remove
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   987
  $ hg export --git . > remove.diff
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   988
  $ cat remove.diff | grep git
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   989
  diff --git a/a b/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   990
  diff --git a/b b/b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   991
  $ hg up -C 0
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   992
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   993
  $ hg import remove.diff
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   994
  applying remove.diff
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   995
  $ hg manifest
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   996
  $ cd ..
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   997
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
   998
12399
4fee1fd3de9a tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents: 12366
diff changeset
   999
Issue927: test update+rename with common name
6179
36ab165abbe2 patch: fix iterhunks() with trailing binary file removal
Patrick Mezard <pmezard@gmail.com>
parents: 6001
diff changeset
  1000
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1001
  $ hg init t
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1002
  $ cd t
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1003
  $ touch a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1004
  $ hg ci -Am t
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1005
  adding a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1006
  $ echo a > a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1007
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1008
Here, bfile.startswith(afile)
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1009
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1010
  $ hg copy a a2
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1011
  $ hg ci -m copya
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1012
  $ hg export --git tip > copy.diff
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1013
  $ hg up -C 0
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1014
  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1015
  $ hg import copy.diff
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1016
  applying copy.diff
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1017
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1018
a should contain an 'a'
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1019
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1020
  $ cat a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1021
  a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1022
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1023
and a2 should have duplicated it
6520
ba0b2dacc623 fix import with -p0
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 6295
diff changeset
  1024
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1025
  $ cat a2
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1026
  a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1027
  $ cd ..
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1028
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1029
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1030
test -p0
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1031
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1032
  $ hg init p0
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1033
  $ cd p0
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1034
  $ echo a > a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1035
  $ hg ci -Am t
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1036
  adding a
17712
c4717f44c1f1 fancyopts: don't show a traceback on invalid integer values
Idan Kamara <idankk86@gmail.com>
parents: 16912
diff changeset
  1037
  $ hg import -p foo
c4717f44c1f1 fancyopts: don't show a traceback on invalid integer values
Idan Kamara <idankk86@gmail.com>
parents: 16912
diff changeset
  1038
  abort: invalid value 'foo' for option -p, expected int
45837
2eb8ad899fa6 errors: raise InputError in fancyopts
Martin von Zweigbergk <martinvonz@google.com>
parents: 45827
diff changeset
  1039
  [10]
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1040
  $ hg import -p0 - << EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1041
  > foobar
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1042
  > --- a	Sat Apr 12 22:43:58 2008 -0400
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1043
  > +++ a	Sat Apr 12 22:44:05 2008 -0400
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1044
  > @@ -1,1 +1,1 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1045
  > -a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1046
  > +bb
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1047
  > EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1048
  applying patch from stdin
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1049
  $ hg status
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1050
  $ cat a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1051
  bb
24259
5ac8ce04baa2 cmdutil.tryimportone: allow importing relative patches into the working dir
Siddharth Agarwal <sid0@fb.com>
parents: 23749
diff changeset
  1052
5ac8ce04baa2 cmdutil.tryimportone: allow importing relative patches into the working dir
Siddharth Agarwal <sid0@fb.com>
parents: 23749
diff changeset
  1053
test --prefix
5ac8ce04baa2 cmdutil.tryimportone: allow importing relative patches into the working dir
Siddharth Agarwal <sid0@fb.com>
parents: 23749
diff changeset
  1054
5ac8ce04baa2 cmdutil.tryimportone: allow importing relative patches into the working dir
Siddharth Agarwal <sid0@fb.com>
parents: 23749
diff changeset
  1055
  $ mkdir -p dir/dir2
5ac8ce04baa2 cmdutil.tryimportone: allow importing relative patches into the working dir
Siddharth Agarwal <sid0@fb.com>
parents: 23749
diff changeset
  1056
  $ echo b > dir/dir2/b
5ac8ce04baa2 cmdutil.tryimportone: allow importing relative patches into the working dir
Siddharth Agarwal <sid0@fb.com>
parents: 23749
diff changeset
  1057
  $ hg ci -Am b
5ac8ce04baa2 cmdutil.tryimportone: allow importing relative patches into the working dir
Siddharth Agarwal <sid0@fb.com>
parents: 23749
diff changeset
  1058
  adding dir/dir2/b
5ac8ce04baa2 cmdutil.tryimportone: allow importing relative patches into the working dir
Siddharth Agarwal <sid0@fb.com>
parents: 23749
diff changeset
  1059
  $ hg import -p2 --prefix dir - << EOF
5ac8ce04baa2 cmdutil.tryimportone: allow importing relative patches into the working dir
Siddharth Agarwal <sid0@fb.com>
parents: 23749
diff changeset
  1060
  > foobar
5ac8ce04baa2 cmdutil.tryimportone: allow importing relative patches into the working dir
Siddharth Agarwal <sid0@fb.com>
parents: 23749
diff changeset
  1061
  > --- drop1/drop2/dir2/b
5ac8ce04baa2 cmdutil.tryimportone: allow importing relative patches into the working dir
Siddharth Agarwal <sid0@fb.com>
parents: 23749
diff changeset
  1062
  > +++ drop1/drop2/dir2/b
5ac8ce04baa2 cmdutil.tryimportone: allow importing relative patches into the working dir
Siddharth Agarwal <sid0@fb.com>
parents: 23749
diff changeset
  1063
  > @@ -1,1 +1,1 @@
5ac8ce04baa2 cmdutil.tryimportone: allow importing relative patches into the working dir
Siddharth Agarwal <sid0@fb.com>
parents: 23749
diff changeset
  1064
  > -b
5ac8ce04baa2 cmdutil.tryimportone: allow importing relative patches into the working dir
Siddharth Agarwal <sid0@fb.com>
parents: 23749
diff changeset
  1065
  > +cc
5ac8ce04baa2 cmdutil.tryimportone: allow importing relative patches into the working dir
Siddharth Agarwal <sid0@fb.com>
parents: 23749
diff changeset
  1066
  > EOF
5ac8ce04baa2 cmdutil.tryimportone: allow importing relative patches into the working dir
Siddharth Agarwal <sid0@fb.com>
parents: 23749
diff changeset
  1067
  applying patch from stdin
5ac8ce04baa2 cmdutil.tryimportone: allow importing relative patches into the working dir
Siddharth Agarwal <sid0@fb.com>
parents: 23749
diff changeset
  1068
  $ hg status
5ac8ce04baa2 cmdutil.tryimportone: allow importing relative patches into the working dir
Siddharth Agarwal <sid0@fb.com>
parents: 23749
diff changeset
  1069
  $ cat dir/dir2/b
5ac8ce04baa2 cmdutil.tryimportone: allow importing relative patches into the working dir
Siddharth Agarwal <sid0@fb.com>
parents: 23749
diff changeset
  1070
  cc
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1071
  $ cd ..
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1072
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1073
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1074
test paths outside repo root
6758
87c704ac92d4 Check that git patches only touch files under root
Brendan Cully <brendan@kublai.com>
parents: 6520
diff changeset
  1075
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1076
  $ mkdir outside
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1077
  $ touch outside/foo
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1078
  $ hg init inside
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1079
  $ cd inside
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1080
  $ hg import - <<EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1081
  > diff --git a/a b/b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1082
  > rename from ../outside/foo
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1083
  > rename to bar
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1084
  > EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1085
  applying patch from stdin
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 35186
diff changeset
  1086
  abort: path contains illegal component: ../outside/foo
48369
35f1ecd84bd0 errors: use detailed exit code in pathauditor
Martin von Zweigbergk <martinvonz@google.com>
parents: 48364
diff changeset
  1087
  [10]
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1088
  $ cd ..
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1089
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1090
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1091
test import with similarity and git and strip (issue295 et al.)
7402
bffdab64dfbb import: add similarity option (issue295)
Brendan Cully <brendan@kublai.com>
parents: 7247
diff changeset
  1092
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1093
  $ hg init sim
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1094
  $ cd sim
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1095
  $ echo 'this is a test' > a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1096
  $ hg ci -Ama
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1097
  adding a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1098
  $ cat > ../rename.diff <<EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1099
  > diff --git a/foo/a b/foo/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1100
  > deleted file mode 100644
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1101
  > --- a/foo/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1102
  > +++ /dev/null
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1103
  > @@ -1,1 +0,0 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1104
  > -this is a test
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1105
  > diff --git a/foo/b b/foo/b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1106
  > new file mode 100644
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1107
  > --- /dev/null
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1108
  > +++ b/foo/b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1109
  > @@ -0,0 +1,2 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1110
  > +this is a test
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1111
  > +foo
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1112
  > EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1113
  $ hg import --no-commit -v -s 1 ../rename.diff -p2
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1114
  applying ../rename.diff
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1115
  patching file a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1116
  patching file b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1117
  adding b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1118
  recording removal of a as rename to b (88% similar)
15194
0705f2ac79d6 import: simplify status reporting logic (and make it more I18N-friendly)
Greg Ward <greg@gerg.ca>
parents: 14452
diff changeset
  1119
  applied to working directory
35167
9fb2b0b41bec test-largefiles: demonstrate problems with renaming and reverting a directory
Matt Harbison <matt_harbison@yahoo.com>
parents: 34661
diff changeset
  1120
  $ echo 'mod b' > b
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1121
  $ hg st -C
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1122
  A b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1123
    a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1124
  R a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1125
  $ hg revert -a
39405
cb70501d8b71 revert: fix the inconsistency of status msgs in --interactive mode
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 37815
diff changeset
  1126
  forgetting b
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1127
  undeleting a
35167
9fb2b0b41bec test-largefiles: demonstrate problems with renaming and reverting a directory
Matt Harbison <matt_harbison@yahoo.com>
parents: 34661
diff changeset
  1128
  $ cat b
9fb2b0b41bec test-largefiles: demonstrate problems with renaming and reverting a directory
Matt Harbison <matt_harbison@yahoo.com>
parents: 34661
diff changeset
  1129
  mod b
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1130
  $ rm b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1131
  $ hg import --no-commit -v -s 100 ../rename.diff -p2
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1132
  applying ../rename.diff
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1133
  patching file a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1134
  patching file b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1135
  adding b
15194
0705f2ac79d6 import: simplify status reporting logic (and make it more I18N-friendly)
Greg Ward <greg@gerg.ca>
parents: 14452
diff changeset
  1136
  applied to working directory
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1137
  $ hg st -C
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1138
  A b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1139
  R a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1140
  $ cd ..
7971
6ea0318daf75 Fix issue1495, corner case of adding empty files via patching
Vsevolod Solovyov <vsevolod.solovyov@gmail.com>
parents: 7402
diff changeset
  1141
6ea0318daf75 Fix issue1495, corner case of adding empty files via patching
Vsevolod Solovyov <vsevolod.solovyov@gmail.com>
parents: 7402
diff changeset
  1142
12399
4fee1fd3de9a tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents: 12366
diff changeset
  1143
Issue1495: add empty file from the end of patch
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1144
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1145
  $ hg init addemptyend
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1146
  $ cd addemptyend
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1147
  $ touch a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1148
  $ hg addremove
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1149
  adding a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1150
  $ hg ci -m "commit"
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1151
  $ cat > a.patch <<EOF
15198
62dc0e7ab092 import: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 15194
diff changeset
  1152
  > add a, b
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1153
  > diff --git a/a b/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1154
  > --- a/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1155
  > +++ b/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1156
  > @@ -0,0 +1,1 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1157
  > +a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1158
  > diff --git a/b b/b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1159
  > new file mode 100644
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1160
  > EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1161
  $ hg import --no-commit a.patch
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1162
  applying a.patch
15198
62dc0e7ab092 import: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 15194
diff changeset
  1163
62dc0e7ab092 import: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 15194
diff changeset
  1164
apply a good patch followed by an empty patch (mainly to ensure
62dc0e7ab092 import: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 15194
diff changeset
  1165
that dirstate is *not* updated when import crashes)
62dc0e7ab092 import: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 15194
diff changeset
  1166
  $ hg update -q -C .
62dc0e7ab092 import: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 15194
diff changeset
  1167
  $ rm b
62dc0e7ab092 import: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 15194
diff changeset
  1168
  $ touch empty.patch
62dc0e7ab092 import: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 15194
diff changeset
  1169
  $ hg import a.patch empty.patch
62dc0e7ab092 import: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 15194
diff changeset
  1170
  applying a.patch
62dc0e7ab092 import: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 15194
diff changeset
  1171
  applying empty.patch
62dc0e7ab092 import: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 15194
diff changeset
  1172
  transaction abort!
62dc0e7ab092 import: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 15194
diff changeset
  1173
  rollback completed
62dc0e7ab092 import: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 15194
diff changeset
  1174
  abort: empty.patch: no diffs found
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45740
diff changeset
  1175
  [10]
15198
62dc0e7ab092 import: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 15194
diff changeset
  1176
  $ hg tip --template '{rev}  {desc|firstline}\n'
62dc0e7ab092 import: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 15194
diff changeset
  1177
  0  commit
62dc0e7ab092 import: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 15194
diff changeset
  1178
  $ hg -q status
62dc0e7ab092 import: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 15194
diff changeset
  1179
  M a
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1180
  $ cd ..
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1181
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1182
create file when source is not /dev/null
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1183
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1184
  $ cat > create.patch <<EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1185
  > diff -Naur proj-orig/foo proj-new/foo
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1186
  > --- proj-orig/foo       1969-12-31 16:00:00.000000000 -0800
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1187
  > +++ proj-new/foo        2009-07-17 16:50:45.801368000 -0700
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1188
  > @@ -0,0 +1,1 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1189
  > +a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1190
  > EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1191
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1192
some people have patches like the following too
9573
b8352a3617f3 patch: do not swallow header-like patch first line (issue1859)
Patrick Mezard <pmezard@gmail.com>
parents: 8523
diff changeset
  1193
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1194
  $ cat > create2.patch <<EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1195
  > diff -Naur proj-orig/foo proj-new/foo
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1196
  > --- proj-orig/foo.orig  1969-12-31 16:00:00.000000000 -0800
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1197
  > +++ proj-new/foo        2009-07-17 16:50:45.801368000 -0700
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1198
  > @@ -0,0 +1,1 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1199
  > +a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1200
  > EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1201
  $ hg init oddcreate
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1202
  $ cd oddcreate
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1203
  $ hg import --no-commit ../create.patch
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1204
  applying ../create.patch
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1205
  $ cat foo
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1206
  a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1207
  $ rm foo
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1208
  $ hg revert foo
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1209
  $ hg import --no-commit ../create2.patch
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1210
  applying ../create2.patch
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1211
  $ cat foo
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1212
  a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1213
16912
6ef3107c661e tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents: 16889
diff changeset
  1214
  $ cd ..
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1215
12399
4fee1fd3de9a tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents: 12366
diff changeset
  1216
Issue1859: first line mistaken for email headers
9576
c156bf947e26 Merge with stable
Matt Mackall <mpm@selenic.com>
parents: 9328 9573
diff changeset
  1217
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1218
  $ hg init emailconfusion
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1219
  $ cd emailconfusion
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1220
  $ cat > a.patch <<EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1221
  > module: summary
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1222
  > 
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1223
  > description
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1224
  > 
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1225
  > 
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1226
  > diff -r 000000000000 -r 9b4c1e343b55 test.txt
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1227
  > --- /dev/null
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1228
  > +++ b/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1229
  > @@ -0,0 +1,1 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1230
  > +a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1231
  > EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1232
  $ hg import -d '0 0' a.patch
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1233
  applying a.patch
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1234
  $ hg parents -v
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1235
  changeset:   0:5a681217c0ad
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1236
  tag:         tip
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1237
  user:        test
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1238
  date:        Thu Jan 01 00:00:00 1970 +0000
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1239
  files:       a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1240
  description:
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1241
  module: summary
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1242
  
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1243
  description
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1244
  
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1245
  
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1246
  $ cd ..
9573
b8352a3617f3 patch: do not swallow header-like patch first line (issue1859)
Patrick Mezard <pmezard@gmail.com>
parents: 8523
diff changeset
  1247
b8352a3617f3 patch: do not swallow header-like patch first line (issue1859)
Patrick Mezard <pmezard@gmail.com>
parents: 8523
diff changeset
  1248
16912
6ef3107c661e tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents: 16889
diff changeset
  1249
in commit message
10729
7a5931c5f2dc patch: enhance diff detection regexp, allow '--- ' in patch message
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 10524
diff changeset
  1250
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1251
  $ hg init commitconfusion
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1252
  $ cd commitconfusion
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1253
  $ cat > a.patch <<EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1254
  > module: summary
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1255
  > 
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1256
  > --- description
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1257
  > 
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1258
  > diff --git a/a b/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1259
  > new file mode 100644
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1260
  > --- /dev/null
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1261
  > +++ b/a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1262
  > @@ -0,0 +1,1 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1263
  > +a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1264
  > EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1265
  > hg import -d '0 0' a.patch
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1266
  > hg parents -v
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1267
  > cd ..
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1268
  > 
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1269
  > echo '% tricky header splitting'
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1270
  > cat > trickyheaders.patch <<EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1271
  > From: User A <user@a>
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1272
  > Subject: [PATCH] from: tricky!
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1273
  > 
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1274
  > # HG changeset patch
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1275
  > # User User B
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1276
  > # Date 1266264441 18000
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1277
  > # Branch stable
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1278
  > # Node ID f2be6a1170ac83bf31cb4ae0bad00d7678115bc0
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1279
  > # Parent  0000000000000000000000000000000000000000
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1280
  > from: tricky!
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1281
  > 
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1282
  > That is not a header.
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1283
  > 
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1284
  > diff -r 000000000000 -r f2be6a1170ac foo
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1285
  > --- /dev/null
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1286
  > +++ b/foo
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1287
  > @@ -0,0 +1,1 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1288
  > +foo
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1289
  > EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1290
  applying a.patch
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1291
  changeset:   0:f34d9187897d
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1292
  tag:         tip
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1293
  user:        test
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1294
  date:        Thu Jan 01 00:00:00 1970 +0000
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1295
  files:       a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1296
  description:
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1297
  module: summary
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1298
  
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1299
  
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1300
  % tricky header splitting
10501
a27af7229850 import: if in doubt, consume stream until start of diff
Brendan Cully <brendan@kublai.com>
parents: 10384
diff changeset
  1301
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1302
  $ hg init trickyheaders
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1303
  $ cd trickyheaders
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1304
  $ hg import -d '0 0' ../trickyheaders.patch
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1305
  applying ../trickyheaders.patch
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1306
  $ hg export --git tip
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1307
  # HG changeset patch
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1308
  # User User B
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1309
  # Date 0 0
18648
76b69cccb07a export: show 'Date' header in a format that also is readable for humans
Mads Kiilerich <mads@kiilerich.com>
parents: 17712
diff changeset
  1310
  #      Thu Jan 01 00:00:00 1970 +0000
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1311
  # Node ID eb56ab91903632294ac504838508cb370c0901d2
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1312
  # Parent  0000000000000000000000000000000000000000
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1313
  from: tricky!
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1314
  
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1315
  That is not a header.
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1316
  
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1317
  diff --git a/foo b/foo
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1318
  new file mode 100644
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1319
  --- /dev/null
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1320
  +++ b/foo
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1321
  @@ -0,0 +1,1 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1322
  +foo
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1323
  $ cd ..
10501
a27af7229850 import: if in doubt, consume stream until start of diff
Brendan Cully <brendan@kublai.com>
parents: 10384
diff changeset
  1324
a27af7229850 import: if in doubt, consume stream until start of diff
Brendan Cully <brendan@kublai.com>
parents: 10384
diff changeset
  1325
12399
4fee1fd3de9a tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents: 12366
diff changeset
  1326
Issue2102: hg export and hg import speak different languages
10748
fb06e357e698 patch: more precise NoHunk, raised for every file (issue2102)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 10745
diff changeset
  1327
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1328
  $ hg init issue2102
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1329
  $ cd issue2102
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1330
  $ mkdir -p src/cmd/gc
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1331
  $ touch src/cmd/gc/mksys.bash
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1332
  $ hg ci -Am init
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1333
  adding src/cmd/gc/mksys.bash
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1334
  $ hg import - <<EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1335
  > # HG changeset patch
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1336
  > # User Rob Pike
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1337
  > # Date 1216685449 25200
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1338
  > # Node ID 03aa2b206f499ad6eb50e6e207b9e710d6409c98
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1339
  > # Parent  93d10138ad8df586827ca90b4ddb5033e21a3a84
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1340
  > help management of empty pkg and lib directories in perforce
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1341
  > 
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1342
  > R=gri
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1343
  > DELTA=4  (4 added, 0 deleted, 0 changed)
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1344
  > OCL=13328
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1345
  > CL=13328
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1346
  > 
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1347
  > diff --git a/lib/place-holder b/lib/place-holder
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1348
  > new file mode 100644
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1349
  > --- /dev/null
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1350
  > +++ b/lib/place-holder
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1351
  > @@ -0,0 +1,2 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1352
  > +perforce does not maintain empty directories.
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1353
  > +this file helps.
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1354
  > diff --git a/pkg/place-holder b/pkg/place-holder
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1355
  > new file mode 100644
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1356
  > --- /dev/null
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1357
  > +++ b/pkg/place-holder
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1358
  > @@ -0,0 +1,2 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1359
  > +perforce does not maintain empty directories.
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1360
  > +this file helps.
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1361
  > diff --git a/src/cmd/gc/mksys.bash b/src/cmd/gc/mksys.bash
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1362
  > old mode 100644
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1363
  > new mode 100755
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1364
  > EOF
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1365
  applying patch from stdin
16889
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1366
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1367
#if execbit
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1368
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1369
  $ hg sum
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1370
  parent: 1:d59915696727 tip
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1371
   help management of empty pkg and lib directories in perforce
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1372
  branch: default
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1373
  commit: (clean)
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1374
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25154
diff changeset
  1375
  phases: 2 draft
16889
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1376
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1377
  $ hg diff --git -c tip
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1378
  diff --git a/lib/place-holder b/lib/place-holder
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1379
  new file mode 100644
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1380
  --- /dev/null
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1381
  +++ b/lib/place-holder
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1382
  @@ -0,0 +1,2 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1383
  +perforce does not maintain empty directories.
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1384
  +this file helps.
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1385
  diff --git a/pkg/place-holder b/pkg/place-holder
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1386
  new file mode 100644
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1387
  --- /dev/null
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1388
  +++ b/pkg/place-holder
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1389
  @@ -0,0 +1,2 @@
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1390
  +perforce does not maintain empty directories.
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1391
  +this file helps.
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1392
  diff --git a/src/cmd/gc/mksys.bash b/src/cmd/gc/mksys.bash
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1393
  old mode 100644
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1394
  new mode 100755
16889
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1395
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1396
#else
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1397
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1398
  $ hg sum
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1399
  parent: 1:28f089cc9ccc tip
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1400
   help management of empty pkg and lib directories in perforce
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1401
  branch: default
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1402
  commit: (clean)
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1403
  update: (current)
25397
0b6dee81ebb7 test-import: sync with 6084926366b9 for platforms without execbit
Matt Harbison <matt_harbison@yahoo.com>
parents: 25382
diff changeset
  1404
  phases: 2 draft
16889
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1405
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1406
  $ hg diff --git -c tip
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1407
  diff --git a/lib/place-holder b/lib/place-holder
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1408
  new file mode 100644
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1409
  --- /dev/null
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1410
  +++ b/lib/place-holder
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1411
  @@ -0,0 +1,2 @@
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1412
  +perforce does not maintain empty directories.
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1413
  +this file helps.
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1414
  diff --git a/pkg/place-holder b/pkg/place-holder
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1415
  new file mode 100644
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1416
  --- /dev/null
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1417
  +++ b/pkg/place-holder
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1418
  @@ -0,0 +1,2 @@
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1419
  +perforce does not maintain empty directories.
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1420
  +this file helps.
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1421
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1422
/* The mode change for mksys.bash is missing here, because on platforms  */
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1423
/* that don't support execbits, mode changes in patches are ignored when */
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1424
/* they are imported. This is obviously also the reason for why the hash */
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1425
/* in the created changeset is different to the one you see above the    */
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1426
/* #else clause */
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1427
0074c2babb13 test-import: enable for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16888
diff changeset
  1428
#endif
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1429
  $ cd ..
10748
fb06e357e698 patch: more precise NoHunk, raised for every file (issue2102)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 10745
diff changeset
  1430
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1431
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1432
diff lines looking like headers
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1433
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1434
  $ hg init difflineslikeheaders
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1435
  $ cd difflineslikeheaders
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1436
  $ echo a >a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1437
  $ echo b >b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1438
  $ echo c >c
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1439
  $ hg ci -Am1
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1440
  adding a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1441
  adding b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1442
  adding c
10883
196908117c27 patch: don't look for headers in diff lines
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 10775
diff changeset
  1443
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1444
  $ echo "key: value" >>a
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1445
  $ echo "key: value" >>b
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1446
  $ echo "foo" >>c
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1447
  $ hg ci -m2
10883
196908117c27 patch: don't look for headers in diff lines
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 10775
diff changeset
  1448
11807
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1449
  $ hg up -C 0
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1450
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1451
  $ hg diff --git -c1 >want
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1452
  $ hg diff -c1 | hg import --no-commit -
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1453
  applying patch from stdin
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1454
  $ hg diff --git >have
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1455
  $ diff want have
887e9f487b7a tests: unify test-import
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11407
diff changeset
  1456
  $ cd ..
10883
196908117c27 patch: don't look for headers in diff lines
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 10775
diff changeset
  1457
15462
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1458
import a unified diff with no lines of context (diff -U0)
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1459
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1460
  $ hg init diffzero
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1461
  $ cd diffzero
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1462
  $ cat > f << EOF
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1463
  > c2
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1464
  > c4
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1465
  > c5
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1466
  > EOF
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1467
  $ hg commit -Am0
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1468
  adding f
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1469
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1470
  $ hg import --no-commit - << EOF
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1471
  > # HG changeset patch
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1472
  > # User test
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1473
  > # Date 0 0
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1474
  > # Node ID f4974ab632f3dee767567b0576c0ec9a4508575c
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1475
  > # Parent  8679a12a975b819fae5f7ad3853a2886d143d794
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1476
  > 1
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1477
  > diff -r 8679a12a975b -r f4974ab632f3 f
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1478
  > --- a/f	Thu Jan 01 00:00:00 1970 +0000
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1479
  > +++ b/f	Thu Jan 01 00:00:00 1970 +0000
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1480
  > @@ -0,0 +1,1 @@
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1481
  > +c1
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1482
  > @@ -1,0 +3,1 @@
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1483
  > +c3
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1484
  > @@ -3,1 +4,0 @@
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1485
  > -c5
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1486
  > EOF
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1487
  applying patch from stdin
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1488
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1489
  $ cat f
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1490
  c1
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1491
  c2
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1492
  c3
2b1ec74c961f mdiff/patch: fix bad hunk handling for unified diffs with zero context
Nicolas Venegas <nvenegas@atlassian.com>
parents: 15327
diff changeset
  1493
  c4
16123
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1494
16912
6ef3107c661e tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents: 16889
diff changeset
  1495
  $ cd ..
6ef3107c661e tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents: 16889
diff changeset
  1496
34964
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1497
commit message that looks like a diff header (issue1879)
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1498
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1499
  $ hg init headerlikemsg
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1500
  $ cd headerlikemsg
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1501
  $ touch empty
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1502
  $ echo nonempty >> nonempty
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1503
  $ hg ci -qAl - <<EOF
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1504
  > blah blah
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1505
  > diff blah
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1506
  > blah blah
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1507
  > EOF
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1508
  $ hg --config diff.git=1 log -pv
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1509
  changeset:   0:c6ef204ef767
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1510
  tag:         tip
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1511
  user:        test
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1512
  date:        Thu Jan 01 00:00:00 1970 +0000
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1513
  files:       empty nonempty
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1514
  description:
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1515
  blah blah
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1516
  diff blah
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1517
  blah blah
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1518
  
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1519
  
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1520
  diff --git a/empty b/empty
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1521
  new file mode 100644
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1522
  diff --git a/nonempty b/nonempty
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1523
  new file mode 100644
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1524
  --- /dev/null
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1525
  +++ b/nonempty
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1526
  @@ -0,0 +1,1 @@
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1527
  +nonempty
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1528
  
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1529
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1530
 (without --git, empty file is lost, but commit message should be preserved)
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1531
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1532
  $ hg init plain
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1533
  $ hg export 0 | hg -R plain import -
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1534
  applying patch from stdin
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1535
  $ hg --config diff.git=1 -R plain log -pv
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1536
  changeset:   0:60a2d231e71f
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1537
  tag:         tip
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1538
  user:        test
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1539
  date:        Thu Jan 01 00:00:00 1970 +0000
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1540
  files:       nonempty
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1541
  description:
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1542
  blah blah
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1543
  diff blah
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1544
  blah blah
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1545
  
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1546
  
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1547
  diff --git a/nonempty b/nonempty
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1548
  new file mode 100644
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1549
  --- /dev/null
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1550
  +++ b/nonempty
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1551
  @@ -0,0 +1,1 @@
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1552
  +nonempty
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1553
  
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1554
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1555
 (with --git, patch contents should be fully preserved)
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1556
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1557
  $ hg init git
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1558
  $ hg --config diff.git=1 export 0 | hg -R git import -
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1559
  applying patch from stdin
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1560
  $ hg --config diff.git=1 -R git log -pv
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1561
  changeset:   0:c6ef204ef767
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1562
  tag:         tip
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1563
  user:        test
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1564
  date:        Thu Jan 01 00:00:00 1970 +0000
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1565
  files:       empty nonempty
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1566
  description:
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1567
  blah blah
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1568
  diff blah
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1569
  blah blah
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1570
  
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1571
  
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1572
  diff --git a/empty b/empty
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1573
  new file mode 100644
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1574
  diff --git a/nonempty b/nonempty
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1575
  new file mode 100644
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1576
  --- /dev/null
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1577
  +++ b/nonempty
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1578
  @@ -0,0 +1,1 @@
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1579
  +nonempty
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1580
  
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1581
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1582
  $ cd ..
7ebf850d3166 patch: improve heuristics to not take the word "diff" as header (issue1879)
Yuya Nishihara <yuya@tcha.org>
parents: 34661
diff changeset
  1583
16650
fcb97d9a26cd patch: fix segfault against unified diffs which start line is zero
Yuya Nishihara <yuya@tcha.org>
parents: 16124
diff changeset
  1584
no segfault while importing a unified diff which start line is zero but chunk
fcb97d9a26cd patch: fix segfault against unified diffs which start line is zero
Yuya Nishihara <yuya@tcha.org>
parents: 16124
diff changeset
  1585
size is non-zero
fcb97d9a26cd patch: fix segfault against unified diffs which start line is zero
Yuya Nishihara <yuya@tcha.org>
parents: 16124
diff changeset
  1586
fcb97d9a26cd patch: fix segfault against unified diffs which start line is zero
Yuya Nishihara <yuya@tcha.org>
parents: 16124
diff changeset
  1587
  $ hg init startlinezero
fcb97d9a26cd patch: fix segfault against unified diffs which start line is zero
Yuya Nishihara <yuya@tcha.org>
parents: 16124
diff changeset
  1588
  $ cd startlinezero
fcb97d9a26cd patch: fix segfault against unified diffs which start line is zero
Yuya Nishihara <yuya@tcha.org>
parents: 16124
diff changeset
  1589
  $ echo foo > foo
fcb97d9a26cd patch: fix segfault against unified diffs which start line is zero
Yuya Nishihara <yuya@tcha.org>
parents: 16124
diff changeset
  1590
  $ hg commit -Amfoo
fcb97d9a26cd patch: fix segfault against unified diffs which start line is zero
Yuya Nishihara <yuya@tcha.org>
parents: 16124
diff changeset
  1591
  adding foo
fcb97d9a26cd patch: fix segfault against unified diffs which start line is zero
Yuya Nishihara <yuya@tcha.org>
parents: 16124
diff changeset
  1592
fcb97d9a26cd patch: fix segfault against unified diffs which start line is zero
Yuya Nishihara <yuya@tcha.org>
parents: 16124
diff changeset
  1593
  $ hg import --no-commit - << EOF
fcb97d9a26cd patch: fix segfault against unified diffs which start line is zero
Yuya Nishihara <yuya@tcha.org>
parents: 16124
diff changeset
  1594
  > diff a/foo b/foo
fcb97d9a26cd patch: fix segfault against unified diffs which start line is zero
Yuya Nishihara <yuya@tcha.org>
parents: 16124
diff changeset
  1595
  > --- a/foo
fcb97d9a26cd patch: fix segfault against unified diffs which start line is zero
Yuya Nishihara <yuya@tcha.org>
parents: 16124
diff changeset
  1596
  > +++ b/foo
fcb97d9a26cd patch: fix segfault against unified diffs which start line is zero
Yuya Nishihara <yuya@tcha.org>
parents: 16124
diff changeset
  1597
  > @@ -0,1 +0,1 @@
fcb97d9a26cd patch: fix segfault against unified diffs which start line is zero
Yuya Nishihara <yuya@tcha.org>
parents: 16124
diff changeset
  1598
  >  foo
fcb97d9a26cd patch: fix segfault against unified diffs which start line is zero
Yuya Nishihara <yuya@tcha.org>
parents: 16124
diff changeset
  1599
  > EOF
fcb97d9a26cd patch: fix segfault against unified diffs which start line is zero
Yuya Nishihara <yuya@tcha.org>
parents: 16124
diff changeset
  1600
  applying patch from stdin
fcb97d9a26cd patch: fix segfault against unified diffs which start line is zero
Yuya Nishihara <yuya@tcha.org>
parents: 16124
diff changeset
  1601
fcb97d9a26cd patch: fix segfault against unified diffs which start line is zero
Yuya Nishihara <yuya@tcha.org>
parents: 16124
diff changeset
  1602
  $ cd ..
fcb97d9a26cd patch: fix segfault against unified diffs which start line is zero
Yuya Nishihara <yuya@tcha.org>
parents: 16124
diff changeset
  1603
16123
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1604
Test corner case involving fuzz and skew
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1605
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1606
  $ hg init morecornercases
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1607
  $ cd morecornercases
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1608
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1609
  $ cat > 01-no-context-beginning-of-file.diff <<EOF
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1610
  > diff --git a/a b/a
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1611
  > --- a/a
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1612
  > +++ b/a
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1613
  > @@ -1,0 +1,1 @@
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1614
  > +line
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1615
  > EOF
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1616
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1617
  $ cat > 02-no-context-middle-of-file.diff <<EOF
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1618
  > diff --git a/a b/a
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1619
  > --- a/a
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1620
  > +++ b/a
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1621
  > @@ -1,1 +1,1 @@
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1622
  > -2
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1623
  > +add some skew
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1624
  > @@ -2,0 +2,1 @@
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1625
  > +line
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1626
  > EOF
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1627
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1628
  $ cat > 03-no-context-end-of-file.diff <<EOF
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1629
  > diff --git a/a b/a
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1630
  > --- a/a
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1631
  > +++ b/a
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1632
  > @@ -10,0 +10,1 @@
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1633
  > +line
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1634
  > EOF
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1635
16124
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1636
  $ cat > 04-middle-of-file-completely-fuzzed.diff <<EOF
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1637
  > diff --git a/a b/a
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1638
  > --- a/a
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1639
  > +++ b/a
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1640
  > @@ -1,1 +1,1 @@
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1641
  > -2
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1642
  > +add some skew
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1643
  > @@ -2,2 +2,3 @@
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1644
  >  not matching, should fuzz
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1645
  >  ... a bit
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1646
  > +line
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1647
  > EOF
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1648
16123
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1649
  $ cat > a <<EOF
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1650
  > 1
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1651
  > 2
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1652
  > 3
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1653
  > 4
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1654
  > EOF
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1655
  $ hg ci -Am adda a
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1656
  $ for p in *.diff; do
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1657
  >   hg import -v --no-commit $p
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1658
  >   cat a
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1659
  >   hg revert -aqC a
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1660
  >   # patch -p1 < $p
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1661
  >   # cat a
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1662
  >   # hg revert -aC a
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1663
  > done
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1664
  applying 01-no-context-beginning-of-file.diff
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1665
  patching file a
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1666
  applied to working directory
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1667
  1
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1668
  line
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1669
  2
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1670
  3
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1671
  4
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1672
  applying 02-no-context-middle-of-file.diff
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1673
  patching file a
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1674
  Hunk #1 succeeded at 2 (offset 1 lines).
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1675
  Hunk #2 succeeded at 4 (offset 1 lines).
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1676
  applied to working directory
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1677
  1
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1678
  add some skew
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1679
  3
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1680
  line
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1681
  4
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1682
  applying 03-no-context-end-of-file.diff
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1683
  patching file a
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1684
  Hunk #1 succeeded at 5 (offset -6 lines).
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1685
  applied to working directory
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1686
  1
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1687
  2
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1688
  3
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1689
  4
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1690
  line
16124
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1691
  applying 04-middle-of-file-completely-fuzzed.diff
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1692
  patching file a
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1693
  Hunk #1 succeeded at 2 (offset 1 lines).
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1694
  Hunk #2 succeeded at 5 with fuzz 2 (offset 1 lines).
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1695
  applied to working directory
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1696
  1
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1697
  add some skew
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1698
  3
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1699
  4
0e0060bf2f44 patch: fuzz more aggressively to match patch(1) behaviour
Patrick Mezard <patrick@mezard.eu>
parents: 16123
diff changeset
  1700
  line
21553
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1701
  $ cd ..
16123
b0c7525f826d patch: fix fuzzing of hunks without previous lines (issue3264)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
  1702
21553
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1703
Test partial application
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1704
------------------------
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1705
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1706
prepare a stack of patches depending on each other
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1707
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1708
  $ hg init partial
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1709
  $ cd partial
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1710
  $ cat << EOF > a
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1711
  > one
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1712
  > two
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1713
  > three
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1714
  > four
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1715
  > five
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1716
  > six
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1717
  > seven
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1718
  > EOF
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1719
  $ hg add a
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1720
  $ echo 'b' > b
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1721
  $ hg add b
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1722
  $ hg commit -m 'initial' -u Babar
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1723
  $ cat << EOF > a
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1724
  > one
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1725
  > two
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1726
  > 3
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1727
  > four
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1728
  > five
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1729
  > six
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1730
  > seven
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1731
  > EOF
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1732
  $ hg commit -m 'three' -u Celeste
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1733
  $ cat << EOF > a
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1734
  > one
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1735
  > two
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1736
  > 3
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1737
  > 4
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1738
  > five
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1739
  > six
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1740
  > seven
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1741
  > EOF
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1742
  $ hg commit -m 'four' -u Rataxes
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1743
  $ cat << EOF > a
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1744
  > one
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1745
  > two
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1746
  > 3
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1747
  > 4
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1748
  > 5
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1749
  > six
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1750
  > seven
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1751
  > EOF
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1752
  $ echo bb >> b
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1753
  $ hg commit -m 'five' -u Arthur
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1754
  $ echo 'Babar' > jungle
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1755
  $ hg add jungle
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1756
  $ hg ci -m 'jungle' -u Zephir
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1757
  $ echo 'Celeste' >> jungle
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1758
  $ hg ci -m 'extended jungle' -u Cornelius
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1759
  $ hg log -G --template '{desc|firstline} [{author}] {diffstat}\n'
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1760
  @  extended jungle [Cornelius] 1: +1/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1761
  |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1762
  o  jungle [Zephir] 1: +1/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1763
  |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1764
  o  five [Arthur] 2: +2/-1
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1765
  |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1766
  o  four [Rataxes] 1: +1/-1
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1767
  |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1768
  o  three [Celeste] 1: +1/-1
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1769
  |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1770
  o  initial [Babar] 2: +8/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1771
  
30811
cf1e15f91c90 templatekw: force noprefix=False to insure diffstat consistency (issue4755)
Matthieu Laneuville <mlaneuville@protonmail.com>
parents: 30332
diff changeset
  1772
Adding those config options should not change the output of diffstat. Bugfix #4755.
cf1e15f91c90 templatekw: force noprefix=False to insure diffstat consistency (issue4755)
Matthieu Laneuville <mlaneuville@protonmail.com>
parents: 30332
diff changeset
  1773
cf1e15f91c90 templatekw: force noprefix=False to insure diffstat consistency (issue4755)
Matthieu Laneuville <mlaneuville@protonmail.com>
parents: 30332
diff changeset
  1774
  $ hg log -r . --template '{diffstat}\n'
cf1e15f91c90 templatekw: force noprefix=False to insure diffstat consistency (issue4755)
Matthieu Laneuville <mlaneuville@protonmail.com>
parents: 30332
diff changeset
  1775
  1: +1/-0
cf1e15f91c90 templatekw: force noprefix=False to insure diffstat consistency (issue4755)
Matthieu Laneuville <mlaneuville@protonmail.com>
parents: 30332
diff changeset
  1776
  $ hg log -r . --template '{diffstat}\n' --config diff.git=1 \
cf1e15f91c90 templatekw: force noprefix=False to insure diffstat consistency (issue4755)
Matthieu Laneuville <mlaneuville@protonmail.com>
parents: 30332
diff changeset
  1777
  >   --config diff.noprefix=1
cf1e15f91c90 templatekw: force noprefix=False to insure diffstat consistency (issue4755)
Matthieu Laneuville <mlaneuville@protonmail.com>
parents: 30332
diff changeset
  1778
  1: +1/-0
21553
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1779
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1780
Importing with some success and some errors:
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1781
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1782
  $ hg update --rev 'desc(initial)'
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1783
  2 files updated, 0 files merged, 1 files removed, 0 files unresolved
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1784
  $ hg export --rev 'desc(five)' | hg import --partial -
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1785
  applying patch from stdin
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1786
  patching file a
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1787
  Hunk #1 FAILED at 1
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1788
  1 out of 1 hunks FAILED -- saving rejects to file a.rej
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1789
  patch applied partially
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1790
  (fix the .rej files and run `hg commit --amend`)
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1791
  [1]
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1792
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1793
  $ hg log -G --template '{desc|firstline} [{author}] {diffstat}\n'
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1794
  @  five [Arthur] 1: +1/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1795
  |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1796
  | o  extended jungle [Cornelius] 1: +1/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1797
  | |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1798
  | o  jungle [Zephir] 1: +1/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1799
  | |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1800
  | o  five [Arthur] 2: +2/-1
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1801
  | |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1802
  | o  four [Rataxes] 1: +1/-1
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1803
  | |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1804
  | o  three [Celeste] 1: +1/-1
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1805
  |/
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1806
  o  initial [Babar] 2: +8/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1807
  
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1808
  $ hg export
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1809
  # HG changeset patch
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1810
  # User Arthur
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1811
  # Date 0 0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1812
  #      Thu Jan 01 00:00:00 1970 +0000
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1813
  # Node ID 26e6446bb2526e2be1037935f5fca2b2706f1509
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1814
  # Parent  8e4f0351909eae6b9cf68c2c076cb54c42b54b2e
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1815
  five
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1816
  
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1817
  diff -r 8e4f0351909e -r 26e6446bb252 b
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1818
  --- a/b	Thu Jan 01 00:00:00 1970 +0000
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1819
  +++ b/b	Thu Jan 01 00:00:00 1970 +0000
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1820
  @@ -1,1 +1,2 @@
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1821
   b
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1822
  +bb
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1823
  $ hg status -c .
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1824
  C a
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1825
  C b
44724
5c2a4f37eace tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems
Joerg Sonnenberger <joerg@bec.de>
parents: 44330
diff changeset
  1826
  $ ls -A
5c2a4f37eace tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems
Joerg Sonnenberger <joerg@bec.de>
parents: 44330
diff changeset
  1827
  .hg
21553
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1828
  a
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1829
  a.rej
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1830
  b
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1831
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1832
Importing with zero success:
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1833
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1834
  $ hg update --rev 'desc(initial)'
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1835
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1836
  $ hg export --rev 'desc(four)' | hg import --partial -
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1837
  applying patch from stdin
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1838
  patching file a
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1839
  Hunk #1 FAILED at 0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1840
  1 out of 1 hunks FAILED -- saving rejects to file a.rej
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1841
  patch applied partially
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1842
  (fix the .rej files and run `hg commit --amend`)
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1843
  [1]
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1844
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1845
  $ hg log -G --template '{desc|firstline} [{author}] {diffstat}\n'
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1846
  @  four [Rataxes] 0: +0/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1847
  |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1848
  | o  five [Arthur] 1: +1/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1849
  |/
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1850
  | o  extended jungle [Cornelius] 1: +1/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1851
  | |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1852
  | o  jungle [Zephir] 1: +1/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1853
  | |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1854
  | o  five [Arthur] 2: +2/-1
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1855
  | |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1856
  | o  four [Rataxes] 1: +1/-1
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1857
  | |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1858
  | o  three [Celeste] 1: +1/-1
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1859
  |/
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1860
  o  initial [Babar] 2: +8/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1861
  
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1862
  $ hg export
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1863
  # HG changeset patch
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1864
  # User Rataxes
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1865
  # Date 0 0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1866
  #      Thu Jan 01 00:00:00 1970 +0000
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1867
  # Node ID cb9b1847a74d9ad52e93becaf14b98dbcc274e1e
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1868
  # Parent  8e4f0351909eae6b9cf68c2c076cb54c42b54b2e
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1869
  four
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1870
  
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1871
  $ hg status -c .
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1872
  C a
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1873
  C b
44724
5c2a4f37eace tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems
Joerg Sonnenberger <joerg@bec.de>
parents: 44330
diff changeset
  1874
  $ ls -A
5c2a4f37eace tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems
Joerg Sonnenberger <joerg@bec.de>
parents: 44330
diff changeset
  1875
  .hg
21553
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1876
  a
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1877
  a.rej
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1878
  b
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1879
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1880
Importing with unknown file:
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1881
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1882
  $ hg update --rev 'desc(initial)'
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1883
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1884
  $ hg export --rev 'desc("extended jungle")' | hg import --partial -
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1885
  applying patch from stdin
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1886
  unable to find 'jungle' for patching
29900
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  1887
  (use '--prefix' to apply patch relative to the current directory)
21553
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1888
  1 out of 1 hunks FAILED -- saving rejects to file jungle.rej
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1889
  patch applied partially
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1890
  (fix the .rej files and run `hg commit --amend`)
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1891
  [1]
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1892
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1893
  $ hg log -G --template '{desc|firstline} [{author}] {diffstat}\n'
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1894
  @  extended jungle [Cornelius] 0: +0/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1895
  |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1896
  | o  four [Rataxes] 0: +0/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1897
  |/
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1898
  | o  five [Arthur] 1: +1/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1899
  |/
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1900
  | o  extended jungle [Cornelius] 1: +1/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1901
  | |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1902
  | o  jungle [Zephir] 1: +1/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1903
  | |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1904
  | o  five [Arthur] 2: +2/-1
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1905
  | |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1906
  | o  four [Rataxes] 1: +1/-1
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1907
  | |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1908
  | o  three [Celeste] 1: +1/-1
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1909
  |/
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1910
  o  initial [Babar] 2: +8/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1911
  
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1912
  $ hg export
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1913
  # HG changeset patch
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1914
  # User Cornelius
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1915
  # Date 0 0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1916
  #      Thu Jan 01 00:00:00 1970 +0000
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1917
  # Node ID 1fb1f86bef43c5a75918178f8d23c29fb0a7398d
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1918
  # Parent  8e4f0351909eae6b9cf68c2c076cb54c42b54b2e
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1919
  extended jungle
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1920
  
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1921
  $ hg status -c .
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1922
  C a
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1923
  C b
44724
5c2a4f37eace tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems
Joerg Sonnenberger <joerg@bec.de>
parents: 44330
diff changeset
  1924
  $ ls -A
5c2a4f37eace tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems
Joerg Sonnenberger <joerg@bec.de>
parents: 44330
diff changeset
  1925
  .hg
21553
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1926
  a
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1927
  a.rej
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1928
  b
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1929
  jungle.rej
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1930
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1931
Importing multiple failing patches:
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1932
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1933
  $ hg update --rev 'desc(initial)'
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1934
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1935
  $ echo 'B' > b # just to make another commit
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1936
  $ hg commit -m "a new base"
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1937
  created new head
22858
d7cedb32a8ab test-import.t: use proper revset order
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22278
diff changeset
  1938
  $ hg export --rev 'desc("four") + desc("extended jungle")' | hg import --partial -
21553
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1939
  applying patch from stdin
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1940
  patching file a
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1941
  Hunk #1 FAILED at 0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1942
  1 out of 1 hunks FAILED -- saving rejects to file a.rej
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1943
  patch applied partially
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1944
  (fix the .rej files and run `hg commit --amend`)
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1945
  [1]
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1946
  $ hg log -G --template '{desc|firstline} [{author}] {diffstat}\n'
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1947
  @  four [Rataxes] 0: +0/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1948
  |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1949
  o  a new base [test] 1: +1/-1
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1950
  |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1951
  | o  extended jungle [Cornelius] 0: +0/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1952
  |/
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1953
  | o  four [Rataxes] 0: +0/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1954
  |/
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1955
  | o  five [Arthur] 1: +1/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1956
  |/
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1957
  | o  extended jungle [Cornelius] 1: +1/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1958
  | |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1959
  | o  jungle [Zephir] 1: +1/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1960
  | |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1961
  | o  five [Arthur] 2: +2/-1
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1962
  | |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1963
  | o  four [Rataxes] 1: +1/-1
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1964
  | |
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1965
  | o  three [Celeste] 1: +1/-1
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1966
  |/
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1967
  o  initial [Babar] 2: +8/-0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1968
  
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1969
  $ hg export
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1970
  # HG changeset patch
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1971
  # User Rataxes
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1972
  # Date 0 0
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1973
  #      Thu Jan 01 00:00:00 1970 +0000
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1974
  # Node ID a9d7b6d0ffbb4eb12b7d5939250fcd42e8930a1d
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1975
  # Parent  f59f8d2e95a8ca5b1b4ca64320140da85f3b44fd
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1976
  four
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1977
  
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1978
  $ hg status -c .
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1979
  C a
bee0e1cffdd3 import: add --partial flag to create a changeset despite failed hunks
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21417
diff changeset
  1980
  C b
26561
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  1981
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  1982
Importing some extra header
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  1983
===========================
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  1984
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  1985
  $ cat > $TESTTMP/parseextra.py <<EOF
40369
ef6cab7930b3 py3: fix module imports in tests, as flagged by test-check-module-imports.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 39707
diff changeset
  1986
  > import mercurial.cmdutil
26561
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  1987
  > import mercurial.patch
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  1988
  > 
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  1989
  > def processfoo(repo, data, extra, opts):
37457
d83191e9749b py3: byte-stringify test-import.t
Yuya Nishihara <yuya@tcha.org>
parents: 36024
diff changeset
  1990
  >     if b'foo' in data:
d83191e9749b py3: byte-stringify test-import.t
Yuya Nishihara <yuya@tcha.org>
parents: 36024
diff changeset
  1991
  >         extra[b'foo'] = data[b'foo']
26562
dd2f5e014806 import: allow processing of extra part header after import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26561
diff changeset
  1992
  > def postimport(ctx):
37457
d83191e9749b py3: byte-stringify test-import.t
Yuya Nishihara <yuya@tcha.org>
parents: 36024
diff changeset
  1993
  >     if b'foo' in ctx.extra():
d83191e9749b py3: byte-stringify test-import.t
Yuya Nishihara <yuya@tcha.org>
parents: 36024
diff changeset
  1994
  >         ctx.repo().ui.write(b'imported-foo: %s\n' % ctx.extra()[b'foo'])
26561
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  1995
  > 
37457
d83191e9749b py3: byte-stringify test-import.t
Yuya Nishihara <yuya@tcha.org>
parents: 36024
diff changeset
  1996
  > mercurial.patch.patchheadermap.append((b'Foo', b'foo'))
d83191e9749b py3: byte-stringify test-import.t
Yuya Nishihara <yuya@tcha.org>
parents: 36024
diff changeset
  1997
  > mercurial.cmdutil.extrapreimport.append(b'foo')
d83191e9749b py3: byte-stringify test-import.t
Yuya Nishihara <yuya@tcha.org>
parents: 36024
diff changeset
  1998
  > mercurial.cmdutil.extrapreimportmap[b'foo'] = processfoo
d83191e9749b py3: byte-stringify test-import.t
Yuya Nishihara <yuya@tcha.org>
parents: 36024
diff changeset
  1999
  > mercurial.cmdutil.extrapostimport.append(b'foo')
d83191e9749b py3: byte-stringify test-import.t
Yuya Nishihara <yuya@tcha.org>
parents: 36024
diff changeset
  2000
  > mercurial.cmdutil.extrapostimportmap[b'foo'] = postimport
26561
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2001
  > EOF
27054
fe458d078ed7 test-import: don't use printf to append an extension to $HGRCPATH
Matt Harbison <matt_harbison@yahoo.com>
parents: 26751
diff changeset
  2002
  $ cat >> $HGRCPATH <<EOF
fe458d078ed7 test-import: don't use printf to append an extension to $HGRCPATH
Matt Harbison <matt_harbison@yahoo.com>
parents: 26751
diff changeset
  2003
  > [extensions]
fe458d078ed7 test-import: don't use printf to append an extension to $HGRCPATH
Matt Harbison <matt_harbison@yahoo.com>
parents: 26751
diff changeset
  2004
  > parseextra=$TESTTMP/parseextra.py
fe458d078ed7 test-import: don't use printf to append an extension to $HGRCPATH
Matt Harbison <matt_harbison@yahoo.com>
parents: 26751
diff changeset
  2005
  > EOF
26561
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2006
  $ hg up -C tip
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2007
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2008
  $ cat > $TESTTMP/foo.patch <<EOF
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2009
  > # HG changeset patch
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2010
  > # User Rataxes
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2011
  > # Date 0 0
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2012
  > #      Thu Jan 01 00:00:00 1970 +0000
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2013
  > # Foo bar
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2014
  > height
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2015
  > 
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2016
  > --- a/a	Thu Jan 01 00:00:00 1970 +0000
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2017
  > +++ b/a	Wed Oct 07 09:17:44 2015 +0000
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2018
  > @@ -5,3 +5,4 @@
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2019
  >  five
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2020
  >  six
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2021
  >  seven
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2022
  > +heigt
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2023
  > EOF
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2024
  $ hg import $TESTTMP/foo.patch
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2025
  applying $TESTTMP/foo.patch
26562
dd2f5e014806 import: allow processing of extra part header after import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26561
diff changeset
  2026
  imported-foo: bar
26561
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2027
  $ hg log --debug -r . | grep extra
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2028
  extra:       branch=default
1f14920a892c import: allow processing of extra part header during import
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25631
diff changeset
  2029
  extra:       foo=bar
29900
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2030
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2031
Warn the user that paths are relative to the root of
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2032
repository when file not found for patching
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2033
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2034
  $ mkdir filedir
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2035
  $ echo "file1" >> filedir/file1
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2036
  $ hg add filedir/file1
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2037
  $ hg commit -m "file1"
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2038
  $ cd filedir
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2039
  $ hg import -p 2 - <<EOF
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2040
  > # HG changeset patch
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2041
  > # User test
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2042
  > # Date 0 0
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2043
  > file2
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2044
  > 
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2045
  > diff --git a/filedir/file1 b/filedir/file1
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2046
  > --- a/filedir/file1
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2047
  > +++ b/filedir/file1
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2048
  > @@ -1,1 +1,2 @@
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2049
  >  file1
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2050
  > +file2
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2051
  > EOF
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2052
  applying patch from stdin
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2053
  unable to find 'file1' for patching
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2054
  (use '--prefix' to apply patch relative to the current directory)
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2055
  1 out of 1 hunks FAILED -- saving rejects to file file1.rej
50f2966f86ca import: report directory-relative paths in error messages (issue5224)
liscju <piotr.listkiewicz@gmail.com>
parents: 29485
diff changeset
  2056
  abort: patch failed to apply
48363
6a454e7053a1 errors: return more detailed errors when failing to parse or apply patch
Martin von Zweigbergk <martinvonz@google.com>
parents: 48336
diff changeset
  2057
  [20]
30078
173bdb502503 import: abort instead of crashing when copy source does not exist (issue5375)
Ryan McElroy <rmcelroy@fb.com>
parents: 29900
diff changeset
  2058
173bdb502503 import: abort instead of crashing when copy source does not exist (issue5375)
Ryan McElroy <rmcelroy@fb.com>
parents: 29900
diff changeset
  2059
test import crash (issue5375)
173bdb502503 import: abort instead of crashing when copy source does not exist (issue5375)
Ryan McElroy <rmcelroy@fb.com>
parents: 29900
diff changeset
  2060
  $ cd ..
173bdb502503 import: abort instead of crashing when copy source does not exist (issue5375)
Ryan McElroy <rmcelroy@fb.com>
parents: 29900
diff changeset
  2061
  $ hg init repo
173bdb502503 import: abort instead of crashing when copy source does not exist (issue5375)
Ryan McElroy <rmcelroy@fb.com>
parents: 29900
diff changeset
  2062
  $ cd repo
173bdb502503 import: abort instead of crashing when copy source does not exist (issue5375)
Ryan McElroy <rmcelroy@fb.com>
parents: 29900
diff changeset
  2063
  $ printf "diff --git a/a b/b\nrename from a\nrename to b" | hg import -
173bdb502503 import: abort instead of crashing when copy source does not exist (issue5375)
Ryan McElroy <rmcelroy@fb.com>
parents: 29900
diff changeset
  2064
  applying patch from stdin
173bdb502503 import: abort instead of crashing when copy source does not exist (issue5375)
Ryan McElroy <rmcelroy@fb.com>
parents: 29900
diff changeset
  2065
  a not tracked!
173bdb502503 import: abort instead of crashing when copy source does not exist (issue5375)
Ryan McElroy <rmcelroy@fb.com>
parents: 29900
diff changeset
  2066
  abort: source file 'a' does not exist
48363
6a454e7053a1 errors: return more detailed errors when failing to parse or apply patch
Martin von Zweigbergk <martinvonz@google.com>
parents: 48336
diff changeset
  2067
  [20]
37573
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2068
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2069
test immature end of hunk
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2070
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2071
  $ hg import - <<'EOF'
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2072
  > diff --git a/foo b/foo
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2073
  > --- a/foo
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2074
  > --- b/foo
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2075
  > @@ -0,0 +1,1 @@
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2076
  > EOF
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2077
  applying patch from stdin
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2078
  abort: bad hunk #1: incomplete hunk
48364
220506bb213e patch: add hint about mangled whitespace on bad patch
Martin von Zweigbergk <martinvonz@google.com>
parents: 48363
diff changeset
  2079
  (check that whitespace in the patch has not been mangled)
48363
6a454e7053a1 errors: return more detailed errors when failing to parse or apply patch
Martin von Zweigbergk <martinvonz@google.com>
parents: 48336
diff changeset
  2080
  [10]
37573
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2081
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2082
  $ hg import - <<'EOF'
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2083
  > diff --git a/foo b/foo
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2084
  > --- a/foo
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2085
  > --- b/foo
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2086
  > @@ -0,0 +1,1 @@
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2087
  > \ No newline at end of file
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2088
  > EOF
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2089
  applying patch from stdin
49b82cdb5983 patch: error out if reached to EOF while reading hunk
Yuya Nishihara <yuya@tcha.org>
parents: 37467
diff changeset
  2090
  abort: bad hunk #1: incomplete hunk
48364
220506bb213e patch: add hint about mangled whitespace on bad patch
Martin von Zweigbergk <martinvonz@google.com>
parents: 48363
diff changeset
  2091
  (check that whitespace in the patch has not been mangled)
48363
6a454e7053a1 errors: return more detailed errors when failing to parse or apply patch
Martin von Zweigbergk <martinvonz@google.com>
parents: 48336
diff changeset
  2092
  [10]