annotate tests/test-import-git.t @ 16523:727068417b95 stable

patch: include file name in binary patch error messages $ hg import --no-commit ../mercurial_1915035238540490516.patch applying ../mercurial_1915035238540490516.patch abort: could not extract binary data Becomes: abort: could not extract "binary2" binary data
author Patrick Mezard <patrick@mezard.eu>
date Thu, 26 Apr 2012 21:44:00 +0200
parents a8065323c003
children ed6a74312176
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
15441
e0348815e806 tests: use 'hghave symlink' for tests using symlinks
Mads Kiilerich <mads@kiilerich.com>
parents: 14567
diff changeset
1 $ "$TESTDIR/hghave" symlink || exit 80
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
3 $ hg init
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
4
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
5 New file:
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
6
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
7 $ hg import -d "1000000 0" -mnew - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
8 > diff --git a/new b/new
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
9 > new file mode 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
10 > index 0000000..7898192
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
11 > --- /dev/null
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
12 > +++ b/new
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
13 > @@ -0,0 +1 @@
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
14 > +a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
15 > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
16 applying patch from stdin
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
17
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
18 $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
19 0:ae3ee40d2079
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
20
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
21 New empty file:
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
22
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
23 $ hg import -d "1000000 0" -mempty - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
24 > diff --git a/empty b/empty
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
25 > new file mode 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
26 > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
27 applying patch from stdin
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
28
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
29 $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
30 1:ab199dc869b5
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
31
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
32 $ hg locate empty
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
33 empty
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
34
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
35 chmod +x:
3589
1c9b6f1237e0 test for git empty new files
Brendan Cully <brendan@kublai.com>
parents: 2864
diff changeset
36
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
37 $ hg import -d "1000000 0" -msetx - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
38 > diff --git a/new b/new
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
39 > old mode 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
40 > new mode 100755
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
41 > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
42 applying patch from stdin
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
43
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
44 $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
45 2:3a34410f282e
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
46
12365
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
47 $ test -x new
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
48
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
49 Copy:
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
50
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
51 $ hg import -d "1000000 0" -mcopy - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
52 > diff --git a/new b/copy
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
53 > old mode 100755
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
54 > new mode 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
55 > similarity index 100%
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
56 > copy from new
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
57 > copy to copy
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
58 > diff --git a/new b/copyx
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
59 > similarity index 100%
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
60 > copy from new
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
61 > copy to copyx
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
62 > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
63 applying patch from stdin
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
64
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
65 $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
66 3:37bacb7ca14d
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
67
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
68 $ 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
69 > 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
70 > test -x copyx || echo bad
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
71 > else
12365
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
72 > test -f copy || echo bad
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
73 > fi
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
74
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
75 $ cat copy
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
76 a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
77
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
78 $ hg cat copy
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
79 a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
80
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
81 Rename:
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
82
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
83 $ hg import -d "1000000 0" -mrename - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
84 > diff --git a/copy b/rename
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
85 > similarity index 100%
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
86 > rename from copy
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
87 > rename to rename
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
88 > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
89 applying patch from stdin
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
90
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
91 $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
92 4:47b81a94361d
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
93
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
94 $ hg locate
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
95 copyx
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
96 empty
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
97 new
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
98 rename
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
99
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
100 Delete:
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
101
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
102 $ hg import -d "1000000 0" -mdelete - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
103 > diff --git a/copyx b/copyx
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
104 > deleted file mode 100755
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
105 > index 7898192..0000000
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
106 > --- a/copyx
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
107 > +++ /dev/null
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
108 > @@ -1 +0,0 @@
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
109 > -a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
110 > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
111 applying patch from stdin
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
112
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
113 $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
114 5:d9b001d98336
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
115
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
116 $ hg locate
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
117 empty
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
118 new
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
119 rename
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
120
12365
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
121 $ test -f copyx
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
122 [1]
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
123
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
124 Regular diff:
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
125
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
126 $ hg import -d "1000000 0" -mregular - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
127 > diff --git a/rename b/rename
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
128 > index 7898192..72e1fe3 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
129 > --- a/rename
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
130 > +++ b/rename
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
131 > @@ -1 +1,5 @@
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 > +a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
137 > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
138 applying patch from stdin
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
139
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
140 $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
141 6:ebe901e7576b
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
142
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
143 Copy and modify:
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
144
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
145 $ hg import -d "1000000 0" -mcopymod - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
146 > diff --git a/rename b/copy2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
147 > similarity index 80%
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
148 > copy from rename
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
149 > copy to copy2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
150 > index 72e1fe3..b53c148 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
151 > --- a/rename
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
152 > +++ b/copy2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
153 > @@ -1,5 +1,5 @@
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 > -a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
157 > +b
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 > a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
160 > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
161 applying patch from stdin
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
162
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
163 $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
164 7:18f368958ecd
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
165
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
166 $ hg cat copy2
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 a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
169 b
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 a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
172
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
173 Rename and modify:
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
174
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
175 $ hg import -d "1000000 0" -mrenamemod - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
176 > diff --git a/copy2 b/rename2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
177 > similarity index 80%
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
178 > rename from copy2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
179 > rename to rename2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
180 > index b53c148..8f81e29 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
181 > --- a/copy2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
182 > +++ b/rename2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
183 > @@ -1,5 +1,5 @@
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 > a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
186 > b
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
187 > -a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
188 > +c
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
189 > a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
190 > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
191 applying patch from stdin
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
192
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
193 $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
194 8:c32b0d7e6f44
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
195
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
196 $ hg locate copy2
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12193
diff changeset
197 [1]
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
198 $ hg cat rename2
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 a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
201 b
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
202 c
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
203 a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
204
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
205 One file renamed multiple times:
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
206
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
207 $ hg import -d "1000000 0" -mmultirenames - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
208 > diff --git a/rename2 b/rename3
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
209 > rename from rename2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
210 > rename to rename3
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
211 > diff --git a/rename2 b/rename3-2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
212 > rename from rename2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
213 > rename to rename3-2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
214 > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
215 applying patch from stdin
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
216
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
217 $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
218 9:034a6bf95330
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
219
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
220 $ hg log -vr. --template '{rev} {files} / {file_copies}\n'
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
221 9 rename2 rename3 rename3-2 / rename3 (rename2)rename3-2 (rename2)
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
222
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
223 $ hg locate rename2 rename3 rename3-2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
224 rename3
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
225 rename3-2
2864
e2b69dbb2daa Tests for git import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
226
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
227 $ hg cat rename3
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 a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
230 b
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
231 c
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
232 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
233
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
234 $ hg cat rename3-2
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 a
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
237 b
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
238 c
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
239 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
240
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
241 $ echo foo > foo
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
242 $ hg add foo
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
243 $ hg ci -m 'add foo'
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
244
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
245 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
246
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
247 $ hg import -d "1000000 0" -m binaryregular - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
248 > diff --git a/binary b/binary
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
249 > new file mode 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
250 > index 0000000000000000000000000000000000000000..593f4708db84ac8fd0f5cc47c634f38c013fe9e4
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
251 > GIT binary patch
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
252 > literal 4
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
253 > Lc\${NkU|;|M00aO5
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
254 >
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
255 > diff --git a/foo b/foo2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
256 > rename from foo
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
257 > rename to foo2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
258 > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
259 applying patch from stdin
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
260
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
261 $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
262 11:c39bce63e786
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
263
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
264 $ cat foo2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
265 foo
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
266
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
267 $ hg manifest --debug | grep binary
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
268 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
269
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
270 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
271
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
272 $ hg import -d "1000000 0" -m multibinary - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
273 > diff --git a/mbinary1 b/mbinary1
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
274 > new file mode 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
275 > index 0000000000000000000000000000000000000000..593f4708db84ac8fd0f5cc47c634f38c013fe9e4
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
276 > GIT binary patch
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
277 > literal 4
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
278 > Lc\${NkU|;|M00aO5
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
279 >
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
280 > diff --git a/mbinary2 b/mbinary2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
281 > new file mode 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
282 > index 0000000000000000000000000000000000000000..112363ac1917b417ffbd7f376ca786a1e5fa7490
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
283 > GIT binary patch
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
284 > literal 5
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
285 > Mc\${NkU|\`?^000jF3jhEB
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
286 >
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
287 > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
288 applying patch from stdin
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
289
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
290 $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
291 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
292
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
293 $ hg manifest --debug | grep mbinary
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
294 045c85ba38952325e126c70962cc0f9d9077bc67 644 mbinary1
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
295 a874b471193996e7cb034bb301cac7bdaf3e3f46 644 mbinary2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
296
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
297 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
298
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
299 $ hg import -d "1000000 0" -m spaces - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
300 > diff --git a/foo bar b/foo bar
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
301 > new file mode 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
302 > index 0000000..257cc56
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
303 > --- /dev/null
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
304 > +++ b/foo bar
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
305 > @@ -0,0 +1 @@
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
306 > +foo
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
307 > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
308 applying patch from stdin
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
309
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
310 $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
311 13:04750ef42fb3
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
312
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
313 $ cat "foo bar"
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
314 foo
4679
826659bd8053 git patches: correct handling of filenames with spaces
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3736
diff changeset
315
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
316 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
317
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
318 $ hg import -d "1000000 0" -m copy-mod-orig - <<EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
319 > diff --git a/foo2 b/foo2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
320 > index 257cc56..fe08ec6 100644
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
321 > --- a/foo2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
322 > +++ b/foo2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
323 > @@ -1 +1,2 @@
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
324 > foo
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
325 > +new line
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
326 > diff --git a/foo2 b/foo3
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
327 > similarity index 100%
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
328 > copy from foo2
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
329 > copy to foo3
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
330 > EOF
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
331 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
332
12193
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
333 $ hg tip -q
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
334 14:c4cd9cdeaa74
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
335
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
336 $ cat foo3
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
337 foo
927e1a677267 tests: unify test-git-*
Adrian Buehlmann <adrian@cadifra.com>
parents: 10928
diff changeset
338
12577
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
339 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
340
12577
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
341 $ echo a > text2
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
342 $ hg ci -Am0
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
343 adding text2
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
344 $ hg import -d "1000000 0" -m rename-as-binary - <<"EOF"
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
345 > diff --git a/text2 b/binary2
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
346 > rename from text2
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
347 > rename to binary2
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
348 > index 78981922613b2afb6025042ff6bd878ac1994e85..10efcb362e9f3b3420fcfbfc0e37f3dc16e29757
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
349 > GIT binary patch
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
350 > literal 5
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
351 > Mc$`b*O5$Pw00T?_*Z=?k
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
352 >
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
353 > EOF
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
354 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
355
12943
7439ea4146f8 tests: use (esc) instead of other kinds of string escaping
Mads Kiilerich <mads@kiilerich.com>
parents: 12874
diff changeset
356 $ cat binary2
12577
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
357 a
05210e955bef Merge with stable
Patrick Mezard <pmezard@gmail.com>
parents: 12574 12365
diff changeset
358 b
12943
7439ea4146f8 tests: use (esc) instead of other kinds of string escaping
Mads Kiilerich <mads@kiilerich.com>
parents: 12874
diff changeset
359 \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
360
b96de59a2c39 tests: fix 05210e955bef merge error in test-git-import.t
Adrian Buehlmann <adrian@cadifra.com>
parents: 12577
diff changeset
361 $ hg st --copies --change .
b96de59a2c39 tests: fix 05210e955bef merge error in test-git-import.t
Adrian Buehlmann <adrian@cadifra.com>
parents: 12577
diff changeset
362 A binary2
b96de59a2c39 tests: fix 05210e955bef merge error in test-git-import.t
Adrian Buehlmann <adrian@cadifra.com>
parents: 12577
diff changeset
363 text2
b96de59a2c39 tests: fix 05210e955bef merge error in test-git-import.t
Adrian Buehlmann <adrian@cadifra.com>
parents: 12577
diff changeset
364 R text2
16522
a8065323c003 patch: display a nice error for invalid base85 data
Patrick Mezard <patrick@mezard.eu>
parents: 16506
diff changeset
365
a8065323c003 patch: display a nice error for invalid base85 data
Patrick Mezard <patrick@mezard.eu>
parents: 16506
diff changeset
366 Invalid base85 content
16523
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
367
16522
a8065323c003 patch: display a nice error for invalid base85 data
Patrick Mezard <patrick@mezard.eu>
parents: 16506
diff changeset
368 $ hg rollback
a8065323c003 patch: display a nice error for invalid base85 data
Patrick Mezard <patrick@mezard.eu>
parents: 16506
diff changeset
369 repository tip rolled back to revision 15 (undo import)
a8065323c003 patch: display a nice error for invalid base85 data
Patrick Mezard <patrick@mezard.eu>
parents: 16506
diff changeset
370 working directory now based on revision 15
a8065323c003 patch: display a nice error for invalid base85 data
Patrick Mezard <patrick@mezard.eu>
parents: 16506
diff changeset
371 $ hg revert -aq
a8065323c003 patch: display a nice error for invalid base85 data
Patrick Mezard <patrick@mezard.eu>
parents: 16506
diff changeset
372 $ hg import -d "1000000 0" -m invalid-binary - <<"EOF"
a8065323c003 patch: display a nice error for invalid base85 data
Patrick Mezard <patrick@mezard.eu>
parents: 16506
diff changeset
373 > diff --git a/text2 b/binary2
a8065323c003 patch: display a nice error for invalid base85 data
Patrick Mezard <patrick@mezard.eu>
parents: 16506
diff changeset
374 > rename from text2
a8065323c003 patch: display a nice error for invalid base85 data
Patrick Mezard <patrick@mezard.eu>
parents: 16506
diff changeset
375 > rename to binary2
a8065323c003 patch: display a nice error for invalid base85 data
Patrick Mezard <patrick@mezard.eu>
parents: 16506
diff changeset
376 > index 78981922613b2afb6025042ff6bd878ac1994e85..10efcb362e9f3b3420fcfbfc0e37f3dc16e29757
a8065323c003 patch: display a nice error for invalid base85 data
Patrick Mezard <patrick@mezard.eu>
parents: 16506
diff changeset
377 > GIT binary patch
a8065323c003 patch: display a nice error for invalid base85 data
Patrick Mezard <patrick@mezard.eu>
parents: 16506
diff changeset
378 > literal 5
a8065323c003 patch: display a nice error for invalid base85 data
Patrick Mezard <patrick@mezard.eu>
parents: 16506
diff changeset
379 > Mc$`b*O.$Pw00T?_*Z=?k
a8065323c003 patch: display a nice error for invalid base85 data
Patrick Mezard <patrick@mezard.eu>
parents: 16506
diff changeset
380 >
a8065323c003 patch: display a nice error for invalid base85 data
Patrick Mezard <patrick@mezard.eu>
parents: 16506
diff changeset
381 > EOF
a8065323c003 patch: display a nice error for invalid base85 data
Patrick Mezard <patrick@mezard.eu>
parents: 16506
diff changeset
382 applying patch from stdin
16523
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
383 abort: could not decode "binary2" binary patch: bad base85 character at position 6
16522
a8065323c003 patch: display a nice error for invalid base85 data
Patrick Mezard <patrick@mezard.eu>
parents: 16506
diff changeset
384 [255]
16523
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
385
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
386 $ hg revert -aq
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
387 $ hg import -d "1000000 0" -m rename-as-binary - <<"EOF"
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
388 > diff --git a/text2 b/binary2
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
389 > rename from text2
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
390 > rename to binary2
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
391 > index 78981922613b2afb6025042ff6bd878ac1994e85..10efcb362e9f3b3420fcfbfc0e37f3dc16e29757
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
392 > GIT binary patch
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
393 > literal 6
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
394 > Mc$`b*O5$Pw00T?_*Z=?k
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
395 >
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
396 > EOF
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
397 applying patch from stdin
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
398 abort: "binary2" length is 5 bytes, should be 6
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
399 [255]
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
400
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
401 $ hg revert -aq
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
402 $ hg import -d "1000000 0" -m rename-as-binary - <<"EOF"
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
403 > diff --git a/text2 b/binary2
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
404 > rename from text2
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
405 > rename to binary2
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
406 > index 78981922613b2afb6025042ff6bd878ac1994e85..10efcb362e9f3b3420fcfbfc0e37f3dc16e29757
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
407 > GIT binary patch
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
408 > Mc$`b*O5$Pw00T?_*Z=?k
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
409 >
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
410 > EOF
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
411 applying patch from stdin
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
412 abort: could not extract "binary2" binary data
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
413 [255]
727068417b95 patch: include file name in binary patch error messages
Patrick Mezard <patrick@mezard.eu>
parents: 16522
diff changeset
414
12874
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
415 $ cd ..
12586
b96de59a2c39 tests: fix 05210e955bef merge error in test-git-import.t
Adrian Buehlmann <adrian@cadifra.com>
parents: 12577
diff changeset
416
12874
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
417 Consecutive import with renames (issue2459)
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
418
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
419 $ hg init issue2459
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
420 $ cd issue2459
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
421 $ 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
422 > 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
423 > new file mode 100644
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
424 > EOF
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
425 applying patch from stdin
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
426 $ 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
427 > 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
428 > rename from a
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
429 > rename to b
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
430 > EOF
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
431 applying patch from stdin
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
432 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
433 $ hg debugstate
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
434 a 0 -1 unset b
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
435 $ hg ci -m done
bb7bf43b72fb patch: fix copies when patching over uncommitted changed (issue2459)
Patrick Mezard <pmezard@gmail.com>
parents: 12586
diff changeset
436 $ cd ..
14385
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
437
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
438 Renames and strip
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
439
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
440 $ hg init renameandstrip
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
441 $ cd renameandstrip
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
442 $ echo a > a
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
443 $ hg ci -Am adda
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
444 adding a
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
445 $ hg import --no-commit -p2 - <<EOF
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
446 > 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
447 > rename from foo/a
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
448 > rename to foo/b
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
449 > EOF
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
450 applying patch from stdin
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
451 $ hg st --copies
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
452 A b
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
453 a
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
454 R a
16112
d7829b2ecf32 import: handle git renames and --similarity (issue3187)
Patrick Mezard <patrick@mezard.eu>
parents: 15441
diff changeset
455
d7829b2ecf32 import: handle git renames and --similarity (issue3187)
Patrick Mezard <patrick@mezard.eu>
parents: 15441
diff changeset
456 Renames, similarity and git diff
d7829b2ecf32 import: handle git renames and --similarity (issue3187)
Patrick Mezard <patrick@mezard.eu>
parents: 15441
diff changeset
457
d7829b2ecf32 import: handle git renames and --similarity (issue3187)
Patrick Mezard <patrick@mezard.eu>
parents: 15441
diff changeset
458 $ hg revert -aC
d7829b2ecf32 import: handle git renames and --similarity (issue3187)
Patrick Mezard <patrick@mezard.eu>
parents: 15441
diff changeset
459 undeleting a
d7829b2ecf32 import: handle git renames and --similarity (issue3187)
Patrick Mezard <patrick@mezard.eu>
parents: 15441
diff changeset
460 forgetting b
d7829b2ecf32 import: handle git renames and --similarity (issue3187)
Patrick Mezard <patrick@mezard.eu>
parents: 15441
diff changeset
461 $ rm b
d7829b2ecf32 import: handle git renames and --similarity (issue3187)
Patrick Mezard <patrick@mezard.eu>
parents: 15441
diff changeset
462 $ hg import --similarity 90 --no-commit - <<EOF
d7829b2ecf32 import: handle git renames and --similarity (issue3187)
Patrick Mezard <patrick@mezard.eu>
parents: 15441
diff changeset
463 > diff --git a/a b/b
d7829b2ecf32 import: handle git renames and --similarity (issue3187)
Patrick Mezard <patrick@mezard.eu>
parents: 15441
diff changeset
464 > rename from a
d7829b2ecf32 import: handle git renames and --similarity (issue3187)
Patrick Mezard <patrick@mezard.eu>
parents: 15441
diff changeset
465 > rename to b
d7829b2ecf32 import: handle git renames and --similarity (issue3187)
Patrick Mezard <patrick@mezard.eu>
parents: 15441
diff changeset
466 > EOF
d7829b2ecf32 import: handle git renames and --similarity (issue3187)
Patrick Mezard <patrick@mezard.eu>
parents: 15441
diff changeset
467 applying patch from stdin
d7829b2ecf32 import: handle git renames and --similarity (issue3187)
Patrick Mezard <patrick@mezard.eu>
parents: 15441
diff changeset
468 $ hg st --copies
d7829b2ecf32 import: handle git renames and --similarity (issue3187)
Patrick Mezard <patrick@mezard.eu>
parents: 15441
diff changeset
469 A b
d7829b2ecf32 import: handle git renames and --similarity (issue3187)
Patrick Mezard <patrick@mezard.eu>
parents: 15441
diff changeset
470 a
d7829b2ecf32 import: handle git renames and --similarity (issue3187)
Patrick Mezard <patrick@mezard.eu>
parents: 15441
diff changeset
471 R a
14385
7709cc983025 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
472 $ cd ..
14431
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
473
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
474 Pure copy with existing destination
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
475
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
476 $ hg init copytoexisting
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
477 $ cd copytoexisting
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
478 $ echo a > a
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
479 $ echo b > b
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
480 $ hg ci -Am add
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
481 adding a
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
482 adding b
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
483 $ hg import --no-commit - <<EOF
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
484 > diff --git a/a b/b
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
485 > copy from a
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
486 > copy to b
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
487 > EOF
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
488 applying patch from stdin
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
489 abort: cannot create b: destination already exists
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
490 [255]
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
491 $ cat b
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
492 b
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
493
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
494 Copy and changes with existing destination
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
495
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
496 $ hg import --no-commit - <<EOF
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
497 > diff --git a/a b/b
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
498 > copy from a
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
499 > copy to b
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
500 > --- a/a
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
501 > +++ b/b
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
502 > @@ -1,1 +1,2 @@
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
503 > a
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
504 > +b
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
505 > EOF
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
506 applying patch from stdin
14452
ee574cfd0c32 patch: use temporary files to handle intermediate copies
Patrick Mezard <pmezard@gmail.com>
parents: 14431
diff changeset
507 cannot create b: destination already exists
ee574cfd0c32 patch: use temporary files to handle intermediate copies
Patrick Mezard <pmezard@gmail.com>
parents: 14431
diff changeset
508 1 out of 1 hunks FAILED -- saving rejects to file b.rej
ee574cfd0c32 patch: use temporary files to handle intermediate copies
Patrick Mezard <pmezard@gmail.com>
parents: 14431
diff changeset
509 abort: patch failed to apply
14431
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
510 [255]
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
511 $ cat b
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
512 b
14535
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
513
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
514 $ ln -s b linkb
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
515 $ hg add linkb
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
516 $ hg ci -m addlinkb
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
517 $ hg import --no-commit - <<EOF
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
518 > diff --git a/linkb b/linkb
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
519 > deleted file mode 120000
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
520 > --- a/linkb
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
521 > +++ /dev/null
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
522 > @@ -1,1 +0,0 @@
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
523 > -badhunk
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
524 > \ No newline at end of file
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
525 > EOF
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
526 applying patch from stdin
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
527 patching file linkb
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
528 Hunk #1 FAILED at 0
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
529 1 out of 1 hunks FAILED -- saving rejects to file linkb.rej
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
530 abort: patch failed to apply
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
531 [255]
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
532 $ hg st
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
533 ? b.rej
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
534 ? linkb.rej
e597ef52a7c2 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com>
parents: 14452
diff changeset
535
16506
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
536 Test corner case involving copies and multiple hunks (issue3384)
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
537
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
538 $ hg revert -qa
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
539 $ hg import --no-commit - <<EOF
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
540 > diff --git a/a b/c
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
541 > copy from a
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
542 > copy to c
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
543 > --- a/a
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
544 > +++ b/c
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
545 > @@ -1,1 +1,2 @@
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
546 > a
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
547 > +a
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
548 > @@ -2,1 +2,2 @@
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
549 > a
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
550 > +a
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
551 > diff --git a/a b/a
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
552 > --- a/a
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
553 > +++ b/a
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
554 > @@ -1,1 +1,2 @@
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
555 > a
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
556 > +b
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
557 > EOF
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
558 applying patch from stdin
fc4e0fecf403 patch: fix patch hunk/metdata synchronization (issue3384)
Patrick Mezard <patrick@mezard.eu>
parents: 16112
diff changeset
559
14431
a6b543e05305 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com>
parents: 14385
diff changeset
560 $ cd ..