tests/test-git-import.t
author Patrick Mezard <pmezard@gmail.com>
Thu, 19 May 2011 22:44:01 +0200
changeset 14385 7709cc983025
parent 12943 7439ea4146f8
child 14431 a6b543e05305
permissions -rw-r--r--
patch: git metadata was ignored if strip > 1 gitpatch objects emitted by iterhunks() are modified in place by applydiff(). Processing them earlier improves iterhunks() isolation. applydiff() modifying them should still be fixed though.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
     1
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
     2
  $ hg init
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
     3
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
     4
New file:
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
     5
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
     6
  $ hg import -d "1000000 0" -mnew - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
     7
  > diff --git a/new b/new
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
     8
  > new file mode 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
     9
  > index 0000000..7898192
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    10
  > --- /dev/null
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    11
  > +++ b/new
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    12
  > @@ -0,0 +1 @@
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    13
  > +a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    14
  > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    15
  applying patch from stdin
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
    16
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    17
  $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    18
  0:ae3ee40d2079
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    19
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    20
New empty file:
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
    21
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    22
  $ hg import -d "1000000 0" -mempty - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    23
  > diff --git a/empty b/empty
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    24
  > new file mode 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    25
  > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    26
  applying patch from stdin
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    27
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    28
  $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    29
  1:ab199dc869b5
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    30
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    31
  $ hg locate empty
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    32
  empty
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    33
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    34
chmod +x:
3589
1c9b6f1237e0 test for git empty new files
Brendan Cully <brendan@kublai.com>
parents: 2864
diff changeset
    35
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    36
  $ hg import -d "1000000 0" -msetx - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    37
  > diff --git a/new b/new
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    38
  > old mode 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    39
  > new mode 100755
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    40
  > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    41
  applying patch from stdin
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
    42
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    43
  $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    44
  2:3a34410f282e
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    45
12365
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
    46
  $ test -x new
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    47
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    48
Copy:
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
    49
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    50
  $ hg import -d "1000000 0" -mcopy - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    51
  > diff --git a/new b/copy
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    52
  > old mode 100755
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    53
  > new mode 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    54
  > similarity index 100%
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    55
  > copy from new
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    56
  > copy to copy
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    57
  > diff --git a/new b/copyx
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    58
  > similarity index 100%
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    59
  > copy from new
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    60
  > copy to copyx
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    61
  > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    62
  applying patch from stdin
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    63
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    64
  $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    65
  3:37bacb7ca14d
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    66
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    67
  $ if "$TESTDIR/hghave" -q execbit; then
12365
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
    68
  >     test -f copy -a ! -x copy || echo bad
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
    69
  >     test -x copyx || echo bad
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    70
  > else
12365
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
    71
  >     test -f copy || echo bad
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    72
  > fi
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    73
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    74
  $ cat copy
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    75
  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    76
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    77
  $ hg cat copy
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    78
  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    79
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    80
Rename:
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
    81
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    82
  $ hg import -d "1000000 0" -mrename - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    83
  > diff --git a/copy b/rename
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    84
  > similarity index 100%
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    85
  > rename from copy
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    86
  > rename to rename
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    87
  > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    88
  applying patch from stdin
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    89
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    90
  $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    91
  4:47b81a94361d
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    92
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    93
  $ hg locate
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    94
  copyx
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    95
  empty
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    96
  new
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    97
  rename
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    98
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
    99
Delete:
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
   100
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   101
  $ hg import -d "1000000 0" -mdelete - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   102
  > diff --git a/copyx b/copyx
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   103
  > deleted file mode 100755
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   104
  > index 7898192..0000000
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   105
  > --- a/copyx
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   106
  > +++ /dev/null
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   107
  > @@ -1 +0,0 @@
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   108
  > -a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   109
  > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   110
  applying patch from stdin
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
   111
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   112
  $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   113
  5:d9b001d98336
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   114
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   115
  $ hg locate
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   116
  empty
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   117
  new
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   118
  rename
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   119
12365
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
   120
  $ test -f copyx
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
   121
  [1]
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
   122
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   123
Regular diff:
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
   124
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   125
  $ hg import -d "1000000 0" -mregular - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   126
  > diff --git a/rename b/rename
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   127
  > index 7898192..72e1fe3 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   128
  > --- a/rename
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   129
  > +++ b/rename
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   130
  > @@ -1 +1,5 @@
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   131
  >  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   132
  > +a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   133
  > +a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   134
  > +a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   135
  > +a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   136
  > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   137
  applying patch from stdin
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   138
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   139
  $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   140
  6:ebe901e7576b
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   141
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   142
Copy and modify:
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
   143
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   144
  $ hg import -d "1000000 0" -mcopymod - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   145
  > diff --git a/rename b/copy2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   146
  > similarity index 80%
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   147
  > copy from rename
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   148
  > copy to copy2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   149
  > index 72e1fe3..b53c148 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   150
  > --- a/rename
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   151
  > +++ b/copy2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   152
  > @@ -1,5 +1,5 @@
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   153
  >  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   154
  >  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   155
  > -a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   156
  > +b
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   157
  >  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   158
  >  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   159
  > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   160
  applying patch from stdin
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   161
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   162
  $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   163
  7:18f368958ecd
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
   164
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   165
  $ hg cat copy2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   166
  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   167
  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   168
  b
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   169
  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   170
  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   171
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   172
Rename and modify:
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
   173
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   174
  $ hg import -d "1000000 0" -mrenamemod - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   175
  > diff --git a/copy2 b/rename2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   176
  > similarity index 80%
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   177
  > rename from copy2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   178
  > rename to rename2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   179
  > index b53c148..8f81e29 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   180
  > --- a/copy2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   181
  > +++ b/rename2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   182
  > @@ -1,5 +1,5 @@
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   183
  >  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   184
  >  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   185
  >  b
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   186
  > -a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   187
  > +c
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   188
  >  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   189
  > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   190
  applying patch from stdin
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   191
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   192
  $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   193
  8:c32b0d7e6f44
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   194
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   195
  $ hg locate copy2
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12193
diff changeset
   196
  [1]
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   197
  $ hg cat rename2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   198
  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   199
  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   200
  b
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   201
  c
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   202
  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   203
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   204
One file renamed multiple times:
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
   205
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   206
  $ hg import -d "1000000 0" -mmultirenames - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   207
  > diff --git a/rename2 b/rename3
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   208
  > rename from rename2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   209
  > rename to rename3
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   210
  > diff --git a/rename2 b/rename3-2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   211
  > rename from rename2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   212
  > rename to rename3-2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   213
  > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   214
  applying patch from stdin
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   215
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   216
  $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   217
  9:034a6bf95330
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   218
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   219
  $ hg log -vr. --template '{rev} {files} / {file_copies}\n'
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   220
  9 rename2 rename3 rename3-2 / rename3 (rename2)rename3-2 (rename2)
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   221
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   222
  $ hg locate rename2 rename3 rename3-2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   223
  rename3
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   224
  rename3-2
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
   225
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   226
  $ hg cat rename3
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   227
  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   228
  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   229
  b
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   230
  c
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   231
  a
3701
05c8704a3743 handle git patches that rename a file to more than one destination
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3589
diff changeset
   232
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   233
  $ hg cat rename3-2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   234
  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   235
  a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   236
  b
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   237
  c
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   238
  a
3701
05c8704a3743 handle git patches that rename a file to more than one destination
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3589
diff changeset
   239
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   240
  $ echo foo > foo
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   241
  $ hg add foo
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   242
  $ hg ci -m 'add foo'
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   243
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   244
Binary files and regular patch hunks:
3716
ab5600428b08 handle files with both git binary patches and copy/rename ops
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3701
diff changeset
   245
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   246
  $ hg import -d "1000000 0" -m binaryregular - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   247
  > diff --git a/binary b/binary
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   248
  > new file mode 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   249
  > index 0000000000000000000000000000000000000000..593f4708db84ac8fd0f5cc47c634f38c013fe9e4
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   250
  > GIT binary patch
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   251
  > literal 4
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   252
  > Lc\${NkU|;|M00aO5
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   253
  > 
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   254
  > diff --git a/foo b/foo2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   255
  > rename from foo
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   256
  > rename to foo2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   257
  > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   258
  applying patch from stdin
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   259
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   260
  $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   261
  11:c39bce63e786
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   262
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   263
  $ cat foo2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   264
  foo
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   265
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   266
  $ hg manifest --debug | grep binary
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   267
  045c85ba38952325e126c70962cc0f9d9077bc67 644   binary
3716
ab5600428b08 handle files with both git binary patches and copy/rename ops
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3701
diff changeset
   268
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   269
Multiple binary files:
3717
9e248cfd8b94 handle files with more than one git binary patch
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3716
diff changeset
   270
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   271
  $ hg import -d "1000000 0" -m multibinary - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   272
  > diff --git a/mbinary1 b/mbinary1
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   273
  > new file mode 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   274
  > index 0000000000000000000000000000000000000000..593f4708db84ac8fd0f5cc47c634f38c013fe9e4
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   275
  > GIT binary patch
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   276
  > literal 4
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   277
  > Lc\${NkU|;|M00aO5
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   278
  > 
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   279
  > diff --git a/mbinary2 b/mbinary2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   280
  > new file mode 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   281
  > index 0000000000000000000000000000000000000000..112363ac1917b417ffbd7f376ca786a1e5fa7490
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   282
  > GIT binary patch
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   283
  > literal 5
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   284
  > Mc\${NkU|\`?^000jF3jhEB
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   285
  > 
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   286
  > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   287
  applying patch from stdin
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   288
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   289
  $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   290
  12:30b530085242
3717
9e248cfd8b94 handle files with more than one git binary patch
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3716
diff changeset
   291
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   292
  $ hg manifest --debug | grep mbinary
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   293
  045c85ba38952325e126c70962cc0f9d9077bc67 644   mbinary1
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   294
  a874b471193996e7cb034bb301cac7bdaf3e3f46 644   mbinary2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   295
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   296
Filenames with spaces:
3717
9e248cfd8b94 handle files with more than one git binary patch
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3716
diff changeset
   297
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   298
  $ hg import -d "1000000 0" -m spaces - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   299
  > diff --git a/foo bar b/foo bar
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   300
  > new file mode 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   301
  > index 0000000..257cc56
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   302
  > --- /dev/null
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   303
  > +++ b/foo bar	
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   304
  > @@ -0,0 +1 @@
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   305
  > +foo
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   306
  > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   307
  applying patch from stdin
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   308
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   309
  $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   310
  13:04750ef42fb3
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   311
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   312
  $ cat "foo bar"
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   313
  foo
4679
826659bd8053 git patches: correct handling of filenames with spaces
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3736
diff changeset
   314
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   315
Copy then modify the original file:
4679
826659bd8053 git patches: correct handling of filenames with spaces
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3736
diff changeset
   316
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   317
  $ hg import -d "1000000 0" -m copy-mod-orig - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   318
  > diff --git a/foo2 b/foo2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   319
  > index 257cc56..fe08ec6 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   320
  > --- a/foo2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   321
  > +++ b/foo2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   322
  > @@ -1 +1,2 @@
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   323
  >  foo
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   324
  > +new line
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   325
  > diff --git a/foo2 b/foo3
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   326
  > similarity index 100%
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   327
  > copy from foo2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   328
  > copy to foo3
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   329
  > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   330
  applying patch from stdin
5403
477136fa6571 Always copy the necessary files before applying a git patch
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 5073
diff changeset
   331
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   332
  $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   333
  14:c4cd9cdeaa74
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   334
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   335
  $ cat foo3
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   336
  foo
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
   337
12577
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
   338
Move text file and patch as binary
12574
77600d697d0e patch: fix rename text to binary file (issue2400)
Patrick Mezard <pmezard@gmail.com>
parents: 10928
diff changeset
   339
12577
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
   340
  $ echo a > text2
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
   341
  $ hg ci -Am0
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
   342
  adding text2
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
   343
  $ hg import -d "1000000 0" -m rename-as-binary - <<"EOF"
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
   344
  > diff --git a/text2 b/binary2
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
   345
  > rename from text2
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
   346
  > rename to binary2
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
   347
  > index 78981922613b2afb6025042ff6bd878ac1994e85..10efcb362e9f3b3420fcfbfc0e37f3dc16e29757
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
   348
  > GIT binary patch
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
   349
  > literal 5
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
   350
  > Mc$`b*O5$Pw00T?_*Z=?k
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
   351
  > 
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
   352
  > EOF
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
   353
  applying patch from stdin
12586
b96de59a2c39 tests: fix 05210e955bef merge error in test-git-import.t
Adrian Buehlmann <adrian@cadifra.com>
parents: 12577
diff changeset
   354
12943
7439ea4146f8 tests: use (esc) instead of other kinds of string escaping
Mads Kiilerich <mads@kiilerich.com>
parents: 12874
diff changeset
   355
  $ cat binary2
12577
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
   356
  a
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
   357
  b
12943
7439ea4146f8 tests: use (esc) instead of other kinds of string escaping
Mads Kiilerich <mads@kiilerich.com>
parents: 12874
diff changeset
   358
  \x00 (no-eol) (esc)
12586
b96de59a2c39 tests: fix 05210e955bef merge error in test-git-import.t
Adrian Buehlmann <adrian@cadifra.com>
parents: 12577
diff changeset
   359
b96de59a2c39 tests: fix 05210e955bef merge error in test-git-import.t
Adrian Buehlmann <adrian@cadifra.com>
parents: 12577
diff changeset
   360
  $ hg st --copies --change . 
b96de59a2c39 tests: fix 05210e955bef merge error in test-git-import.t
Adrian Buehlmann <adrian@cadifra.com>
parents: 12577
diff changeset
   361
  A binary2
b96de59a2c39 tests: fix 05210e955bef merge error in test-git-import.t
Adrian Buehlmann <adrian@cadifra.com>
parents: 12577
diff changeset
   362
    text2
b96de59a2c39 tests: fix 05210e955bef merge error in test-git-import.t
Adrian Buehlmann <adrian@cadifra.com>
parents: 12577
diff changeset
   363
  R text2
12874
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   364
  $ cd ..
12586
b96de59a2c39 tests: fix 05210e955bef merge error in test-git-import.t
Adrian Buehlmann <adrian@cadifra.com>
parents: 12577
diff changeset
   365
12874
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   366
Consecutive import with renames (issue2459)
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   367
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   368
  $ hg init issue2459
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   369
  $ cd issue2459
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   370
  $ hg import --no-commit --force - <<EOF
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   371
  > diff --git a/a b/a
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   372
  > new file mode 100644
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   373
  > EOF
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   374
  applying patch from stdin
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   375
  $ hg import --no-commit --force - <<EOF
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   376
  > diff --git a/a b/b
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   377
  > rename from a
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   378
  > rename to b
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   379
  > EOF
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   380
  applying patch from stdin
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   381
  a has not been committed yet, so no copy data will be stored for b.
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   382
  $ hg debugstate
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   383
  a   0         -1 unset               b
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   384
  $ hg ci -m done
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
   385
  $ cd ..
14385
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   386
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   387
Renames and strip
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   388
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   389
  $ hg init renameandstrip
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   390
  $ cd renameandstrip
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   391
  $ echo a > a
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   392
  $ hg ci -Am adda
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   393
  adding a
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   394
  $ hg import --no-commit -p2 - <<EOF
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   395
  > diff --git a/foo/a b/foo/b
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   396
  > rename from foo/a
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   397
  > rename to foo/b
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   398
  > EOF
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   399
  applying patch from stdin
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   400
  $ hg st --copies
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   401
  A b
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   402
    a
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   403
  R a
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   404
  $ cd ..