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