tests/test-git-import.t
author Erik Zielke <ez@aragost.com>
Wed, 09 Feb 2011 10:53:09 +0100
changeset 13417 0748e18be470
parent 12943 7439ea4146f8
child 14385 7709cc983025
permissions -rw-r--r--
subrepos: prompt on conflicts on update with dirty subrepos Consider a repository with a single subrepository. The changesets in the main repository reference the subrepository changesets like this: m0 -> s0 m1 -> s1 m2 -> s2 Starting from a state (m1, s0), doing 'hg update m2' in the main repository will yield a conflict: the subrepo is at revision s0 but the target revision says it should be at revision s2. Before this change, Mercurial would do (m1, s0) -> (m2, s2) and thus ignore the conflict between the working copy and the target revision. With this change, the user is prompted to resolve the conflict by choosing which revision he wants. This is consistent with 'hg merge', which also prompts the user when it detects conflicts in the merged .hgsubstate files. The prompt looks like this: $ hg update tip subrepository sources for my-subrepo differ use (l)ocal source (fc627a69481f) or (r)emote source (12a213df6fa9)?
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 ..