annotate tests/test-convert-git.t @ 14152:00121103546a

convert: handle invalid subversion source paths
author Mads Kiilerich <mads@kiilerich.com>
date Sun, 01 May 2011 17:35:05 +0200
parents 6b7077df4aa5
children 1e9451476bf8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5335
88e931f74e8b convert_git: avoid returning two entries for the same file in getchanges
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 5231
diff changeset
1
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
2 $ "$TESTDIR/hghave" git || exit 80
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
3 $ echo "[extensions]" >> $HGRCPATH
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
4 $ echo "convert=" >> $HGRCPATH
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
5 $ echo 'hgext.graphlog =' >> $HGRCPATH
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
6 $ GIT_AUTHOR_NAME='test'; export GIT_AUTHOR_NAME
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
7 $ GIT_AUTHOR_EMAIL='test@example.org'; export GIT_AUTHOR_EMAIL
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
8 $ GIT_AUTHOR_DATE="2007-01-01 00:00:00 +0000"; export GIT_AUTHOR_DATE
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
9 $ GIT_COMMITTER_NAME="$GIT_AUTHOR_NAME"; export GIT_COMMITTER_NAME
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
10 $ GIT_COMMITTER_EMAIL="$GIT_AUTHOR_EMAIL"; export GIT_COMMITTER_EMAIL
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
11 $ GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"; export GIT_COMMITTER_DATE
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
12 $ count=10
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
13 $ commit()
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
14 > {
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
15 > GIT_AUTHOR_DATE="2007-01-01 00:00:$count +0000"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
16 > GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
17 > git commit "$@" >/dev/null 2>/dev/null || echo "git commit error"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
18 > count=`expr $count + 1`
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
19 > }
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
20 $ mkdir git-repo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
21 $ cd git-repo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
22 $ git init-db >/dev/null 2>/dev/null
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
23 $ echo a > a
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
24 $ mkdir d
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
25 $ echo b > d/b
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
26 $ git add a d
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
27 $ commit -a -m t1
5335
88e931f74e8b convert_git: avoid returning two entries for the same file in getchanges
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 5231
diff changeset
28
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
29 Remove the directory, then try to replace it with a file
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
30 (issue 754)
5335
88e931f74e8b convert_git: avoid returning two entries for the same file in getchanges
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 5231
diff changeset
31
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
32 $ git rm -f d/b
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
33 rm 'd/b'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
34 $ commit -m t2
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
35 $ echo d > d
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
36 $ git add d
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
37 $ commit -m t3
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
38 $ echo b >> a
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
39 $ commit -a -m t4.1
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
40 $ git checkout -b other HEAD~ >/dev/null 2>/dev/null
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
41 $ echo c > a
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
42 $ echo a >> a
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
43 $ commit -a -m t4.2
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
44 $ git checkout master >/dev/null 2>/dev/null
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
45 $ git pull --no-commit . other > /dev/null 2>/dev/null
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
46 $ commit -m 'Merge branch other'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
47 $ cd ..
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
48 $ hg convert --datesort git-repo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
49 assuming destination git-repo-hg
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
50 initializing destination git-repo-hg repository
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
51 scanning source...
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
52 sorting...
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
53 converting...
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
54 5 t1
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
55 4 t2
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
56 3 t3
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
57 2 t4.1
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
58 1 t4.2
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
59 0 Merge branch other
13756
6b7077df4aa5 convert: add bookmarks reading support to git backend
Edouard Gomez <ed.gomez@free.fr>
parents: 12743
diff changeset
60 updating bookmarks
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
61 $ hg up -q -R git-repo-hg
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
62 $ hg -R git-repo-hg tip -v
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
63 changeset: 5:c78094926be2
13756
6b7077df4aa5 convert: add bookmarks reading support to git backend
Edouard Gomez <ed.gomez@free.fr>
parents: 12743
diff changeset
64 bookmark: master
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
65 tag: tip
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
66 parent: 3:f5f5cb45432b
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
67 parent: 4:4e174f80c67c
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
68 user: test <test@example.org>
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
69 date: Mon Jan 01 00:00:15 2007 +0000
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
70 files: a
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
71 description:
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
72 Merge branch other
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
73
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
74
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
75 $ count=10
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
76 $ mkdir git-repo2
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
77 $ cd git-repo2
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
78 $ git init-db >/dev/null 2>/dev/null
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
79 $ echo foo > foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
80 $ git add foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
81 $ commit -a -m 'add foo'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
82 $ echo >> foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
83 $ commit -a -m 'change foo'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
84 $ git checkout -b Bar HEAD~ >/dev/null 2>/dev/null
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
85 $ echo quux >> quux
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
86 $ git add quux
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
87 $ commit -a -m 'add quux'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
88 $ echo bar > bar
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
89 $ git add bar
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
90 $ commit -a -m 'add bar'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
91 $ git checkout -b Baz HEAD~ >/dev/null 2>/dev/null
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
92 $ echo baz > baz
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
93 $ git add baz
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
94 $ commit -a -m 'add baz'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
95 $ git checkout master >/dev/null 2>/dev/null
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
96 $ git pull --no-commit . Bar Baz > /dev/null 2>/dev/null
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
97 $ commit -m 'Octopus merge'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
98 $ echo bar >> bar
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
99 $ commit -a -m 'change bar'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
100 $ git checkout -b Foo HEAD~ >/dev/null 2>/dev/null
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
101 $ echo >> foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
102 $ commit -a -m 'change foo'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
103 $ git checkout master >/dev/null 2>/dev/null
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
104 $ git pull --no-commit -s ours . Foo > /dev/null 2>/dev/null
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
105 $ commit -m 'Discard change to foo'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
106 $ cd ..
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
107 $ glog()
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
108 > {
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
109 > hg glog --template '{rev} "{desc|firstline}" files: {files}\n' "$@"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
110 > }
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
111 $ splitrepo()
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
112 > {
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
113 > msg="$1"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
114 > files="$2"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
115 > opts=$3
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
116 > echo "% $files: $msg"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
117 > prefix=`echo "$files" | sed -e 's/ /-/g'`
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
118 > fmap="$prefix.fmap"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
119 > repo="$prefix.repo"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
120 > for i in $files; do
12743
4c4aeaab2339 check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 12530
diff changeset
121 > echo "include $i" >> "$fmap"
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
122 > done
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
123 > hg -q convert $opts --filemap "$fmap" --datesort git-repo2 "$repo"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
124 > hg up -q -R "$repo"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
125 > glog -R "$repo"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
126 > hg -R "$repo" manifest --debug
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
127 > }
5380
a5a7f7fd5554 convert_git: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 5369
diff changeset
128
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
129 full conversion
5380
a5a7f7fd5554 convert_git: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 5369
diff changeset
130
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
131 $ hg -q convert --datesort git-repo2 fullrepo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
132 $ hg up -q -R fullrepo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
133 $ glog -R fullrepo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
134 @ 9 "Discard change to foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
135 |\
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
136 | o 8 "change foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
137 | |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
138 o | 7 "change bar" files: bar
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
139 |/
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
140 o 6 "(octopus merge fixup)" files:
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
141 |\
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
142 | o 5 "Octopus merge" files: baz
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
143 | |\
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
144 o | | 4 "add baz" files: baz
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
145 | | |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
146 +---o 3 "add bar" files: bar
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
147 | |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
148 o | 2 "add quux" files: quux
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
149 | |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
150 | o 1 "change foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
151 |/
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
152 o 0 "add foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
153
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
154 $ hg -R fullrepo manifest --debug
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
155 245a3b8bc653999c2b22cdabd517ccb47aecafdf 644 bar
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
156 354ae8da6e890359ef49ade27b68bbc361f3ca88 644 baz
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
157 9277c9cc8dd4576fc01a17939b4351e5ada93466 644 foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
158 88dfeab657e8cf2cef3dec67b914f49791ae76b1 644 quux
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
159 $ splitrepo 'octopus merge' 'foo bar baz'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
160 % foo bar baz: octopus merge
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
161 @ 8 "Discard change to foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
162 |\
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
163 | o 7 "change foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
164 | |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
165 o | 6 "change bar" files: bar
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
166 |/
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
167 o 5 "(octopus merge fixup)" files:
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
168 |\
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
169 | o 4 "Octopus merge" files: baz
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
170 | |\
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
171 o | | 3 "add baz" files: baz
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
172 | | |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
173 +---o 2 "add bar" files: bar
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
174 | |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
175 | o 1 "change foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
176 |/
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
177 o 0 "add foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
178
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
179 245a3b8bc653999c2b22cdabd517ccb47aecafdf 644 bar
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
180 354ae8da6e890359ef49ade27b68bbc361f3ca88 644 baz
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
181 9277c9cc8dd4576fc01a17939b4351e5ada93466 644 foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
182 $ splitrepo 'only some parents of an octopus merge; "discard" a head' 'foo baz quux'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
183 % foo baz quux: only some parents of an octopus merge; "discard" a head
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
184 @ 6 "Discard change to foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
185 |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
186 o 5 "change foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
187 |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
188 o 4 "Octopus merge" files:
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
189 |\
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
190 | o 3 "add baz" files: baz
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
191 | |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
192 | o 2 "add quux" files: quux
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
193 | |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
194 o | 1 "change foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
195 |/
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
196 o 0 "add foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
197
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
198 354ae8da6e890359ef49ade27b68bbc361f3ca88 644 baz
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
199 9277c9cc8dd4576fc01a17939b4351e5ada93466 644 foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
200 88dfeab657e8cf2cef3dec67b914f49791ae76b1 644 quux
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
201 $ echo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
202
5380
a5a7f7fd5554 convert_git: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 5369
diff changeset
203
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
204 test binary conversion (issue 1359)
5380
a5a7f7fd5554 convert_git: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 5369
diff changeset
205
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
206 $ mkdir git-repo3
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
207 $ cd git-repo3
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
208 $ git init-db >/dev/null 2>/dev/null
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
209 $ python -c 'file("b", "wb").write("".join([chr(i) for i in range(256)])*16)'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
210 $ git add b
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
211 $ commit -a -m addbinary
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
212 $ cd ..
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
213
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
214 convert binary file
7222
c1dc903dc7b6 convert: read git output in binary mode under Windows (issue 1359)
Patrick Mezard <pmezard@gmail.com>
parents: 5380
diff changeset
215
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
216 $ hg convert git-repo3 git-repo3-hg
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
217 initializing destination git-repo3-hg repository
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
218 scanning source...
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
219 sorting...
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
220 converting...
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
221 0 addbinary
13756
6b7077df4aa5 convert: add bookmarks reading support to git backend
Edouard Gomez <ed.gomez@free.fr>
parents: 12743
diff changeset
222 updating bookmarks
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
223 $ cd git-repo3-hg
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
224 $ hg up -C
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
225 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
226 $ python -c 'print len(file("b", "rb").read())'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
227 4096
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
228 $ cd ..
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
229 $ echo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
230
7222
c1dc903dc7b6 convert: read git output in binary mode under Windows (issue 1359)
Patrick Mezard <pmezard@gmail.com>
parents: 5380
diff changeset
231
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
232 test author vs committer
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
233
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
234 $ mkdir git-repo4
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
235 $ cd git-repo4
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
236 $ git init-db >/dev/null 2>/dev/null
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
237 $ echo >> foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
238 $ git add foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
239 $ commit -a -m addfoo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
240 $ echo >> foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
241 $ GIT_AUTHOR_NAME="nottest"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
242 $ commit -a -m addfoo2
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
243 $ cd ..
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
244
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
245 convert author committer
7222
c1dc903dc7b6 convert: read git output in binary mode under Windows (issue 1359)
Patrick Mezard <pmezard@gmail.com>
parents: 5380
diff changeset
246
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
247 $ hg convert git-repo4 git-repo4-hg
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
248 initializing destination git-repo4-hg repository
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
249 scanning source...
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
250 sorting...
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
251 converting...
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
252 1 addfoo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
253 0 addfoo2
13756
6b7077df4aa5 convert: add bookmarks reading support to git backend
Edouard Gomez <ed.gomez@free.fr>
parents: 12743
diff changeset
254 updating bookmarks
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
255 $ hg -R git-repo4-hg log -v
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
256 changeset: 1:d63e967f93da
13756
6b7077df4aa5 convert: add bookmarks reading support to git backend
Edouard Gomez <ed.gomez@free.fr>
parents: 12743
diff changeset
257 bookmark: master
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
258 tag: tip
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
259 user: nottest <test@example.org>
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
260 date: Mon Jan 01 00:00:21 2007 +0000
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
261 files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
262 description:
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
263 addfoo2
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
264
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
265 committer: test <test@example.org>
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
266
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
267
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
268 changeset: 0:0735477b0224
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
269 user: test <test@example.org>
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
270 date: Mon Jan 01 00:00:20 2007 +0000
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
271 files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
272 description:
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
273 addfoo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
274
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
275
8691
a0a541d6fed6 convert: fail fast if source does not support --sourcesort
Patrick Mezard <pmezard@gmail.com>
parents: 8523
diff changeset
276
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
277 --sourceorder should fail
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
278
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
279 $ hg convert --sourcesort git-repo4 git-repo4-sourcesort-hg
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
280 initializing destination git-repo4-sourcesort-hg repository
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
281 abort: --sourcesort is not supported by this data source
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
282 [255]
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
283
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
284 damage git repository and convert again
8691
a0a541d6fed6 convert: fail fast if source does not support --sourcesort
Patrick Mezard <pmezard@gmail.com>
parents: 8523
diff changeset
285
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
286 $ cat > damage.py <<EOF
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
287 > import os
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
288 > for root, dirs, files in os.walk('git-repo4/.git/objects'):
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
289 > if files:
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
290 > path = os.path.join(root, files[0])
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
291 > os.remove(path)
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
292 > break
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
293 > EOF
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
294 $ python damage.py
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
295 $ hg convert git-repo4 git-repo4-broken-hg 2>&1 | \
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
296 > grep 'abort:' | sed 's/abort:.*/abort:/g'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
297 abort: