Mercurial > hg
annotate tests/test-convert-git.t @ 17616:9535a0dc41f2
store: implement fncache basic path encoding in C
(This is not yet enabled; it will be turned on in a followup patch.)
The path encoding performed by fncache is complex and (perhaps
surprisingly) slow enough to negatively affect the overall performance
of Mercurial.
For a short path (< 120 bytes), the Python code can be reduced to a fairly
tractable state machine that either determines that nothing needs to be
done in a single pass, or performs the encoding in a second pass.
For longer paths, we avoid the more complicated hashed encoding scheme
for now, and fall back to Python.
Raw performance: I measured in a repo containing 150,000 files in its tip
manifest, with a median path name length of 57 bytes, and 95th percentile
of 96 bytes.
In this repo, the Python code takes 3.1 seconds to encode all path
names, while the hybrid C-and-Python code (called from Python) takes
0.21 seconds, for a speedup of about 14.
Across several other large repositories, I've measured the speedup from
the C code at between 26x and 40x.
For path names above 120 bytes where we must fall back to Python for
hashed encoding, the speedup is about 1.7x. Thus absolute performance
will depend strongly on the characteristics of a particular repository.
author | Bryan O'Sullivan <bryano@fb.com> |
---|---|
date | Tue, 18 Sep 2012 15:42:19 -0700 |
parents | 8f36806b8f6a |
children | 0eed66327ad4 |
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 |
16892
cfd892b7569f
test-convert: disable autocrlf for git
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents:
15243
diff
changeset
|
3 $ echo "[core]" >> $HOME/.gitconfig |
cfd892b7569f
test-convert: disable autocrlf for git
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents:
15243
diff
changeset
|
4 $ echo "autocrlf = false" >> $HOME/.gitconfig |
16954
8f36806b8f6a
test-convert: disable autocrlf for git
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents:
16893
diff
changeset
|
5 $ echo "[core]" >> $HOME/.gitconfig |
8f36806b8f6a
test-convert: disable autocrlf for git
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents:
16893
diff
changeset
|
6 $ echo "autocrlf = false" >> $HOME/.gitconfig |
12530
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
7 $ echo "[extensions]" >> $HGRCPATH |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
8 $ echo "convert=" >> $HGRCPATH |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
9 $ echo 'hgext.graphlog =' >> $HGRCPATH |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
10 $ GIT_AUTHOR_NAME='test'; export GIT_AUTHOR_NAME |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
11 $ 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
|
12 $ 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
|
13 $ 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
|
14 $ 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
|
15 $ 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
|
16 $ count=10 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
17 $ commit() |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
18 > { |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
19 > 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
|
20 > GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE" |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
21 > 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
|
22 > count=`expr $count + 1` |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
23 > } |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
24 $ mkdir git-repo |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
25 $ cd git-repo |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
26 $ git init-db >/dev/null 2>/dev/null |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
27 $ echo a > a |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
28 $ mkdir d |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
29 $ echo b > d/b |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
30 $ git add a d |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
31 $ 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
|
32 |
12530
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
33 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
|
34 (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
|
35 |
12530
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
36 $ git rm -f d/b |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
37 rm 'd/b' |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
38 $ commit -m t2 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
39 $ echo d > d |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
40 $ git add d |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
41 $ commit -m t3 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
42 $ echo b >> a |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
43 $ commit -a -m t4.1 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
44 $ 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
|
45 $ echo c > a |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
46 $ echo a >> a |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
47 $ commit -a -m t4.2 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
48 $ git checkout master >/dev/null 2>/dev/null |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
49 $ 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
|
50 $ commit -m 'Merge branch other' |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
51 $ cd .. |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
52 $ hg convert --datesort git-repo |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
53 assuming destination git-repo-hg |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
54 initializing destination git-repo-hg repository |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
55 scanning source... |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
56 sorting... |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
57 converting... |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
58 5 t1 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
59 4 t2 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
60 3 t3 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
61 2 t4.1 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
62 1 t4.2 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
63 0 Merge branch other |
13756
6b7077df4aa5
convert: add bookmarks reading support to git backend
Edouard Gomez <ed.gomez@free.fr>
parents:
12743
diff
changeset
|
64 updating bookmarks |
12530
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
65 $ hg up -q -R git-repo-hg |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
66 $ hg -R git-repo-hg tip -v |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
67 changeset: 5:c78094926be2 |
13756
6b7077df4aa5
convert: add bookmarks reading support to git backend
Edouard Gomez <ed.gomez@free.fr>
parents:
12743
diff
changeset
|
68 bookmark: master |
12530
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
69 tag: tip |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
70 parent: 3:f5f5cb45432b |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
71 parent: 4:4e174f80c67c |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
72 user: test <test@example.org> |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
73 date: Mon Jan 01 00:00:15 2007 +0000 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
74 files: a |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
75 description: |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
76 Merge branch other |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
77 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
78 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
79 $ count=10 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
80 $ mkdir git-repo2 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
81 $ cd git-repo2 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
82 $ git init-db >/dev/null 2>/dev/null |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
83 $ echo foo > foo |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
84 $ git add foo |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
85 $ commit -a -m 'add foo' |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
86 $ echo >> foo |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
87 $ commit -a -m 'change foo' |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
88 $ 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
|
89 $ echo quux >> quux |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
90 $ git add quux |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
91 $ commit -a -m 'add quux' |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
92 $ echo bar > bar |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
93 $ git add bar |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
94 $ commit -a -m 'add bar' |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
95 $ 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
|
96 $ echo baz > baz |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
97 $ git add baz |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
98 $ commit -a -m 'add baz' |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
99 $ git checkout master >/dev/null 2>/dev/null |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
100 $ 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
|
101 $ commit -m 'Octopus merge' |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
102 $ echo bar >> bar |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
103 $ commit -a -m 'change bar' |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
104 $ 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
|
105 $ echo >> foo |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
106 $ commit -a -m 'change foo' |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
107 $ git checkout master >/dev/null 2>/dev/null |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
108 $ 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
|
109 $ commit -m 'Discard change to foo' |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
110 $ cd .. |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
111 $ glog() |
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 > hg glog --template '{rev} "{desc|firstline}" files: {files}\n' "$@" |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
114 > } |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
115 $ splitrepo() |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
116 > { |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
117 > msg="$1" |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
118 > files="$2" |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
119 > opts=$3 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
120 > echo "% $files: $msg" |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
121 > prefix=`echo "$files" | sed -e 's/ /-/g'` |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
122 > fmap="$prefix.fmap" |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
123 > repo="$prefix.repo" |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
124 > 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
|
125 > echo "include $i" >> "$fmap" |
12530
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
126 > done |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
127 > 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
|
128 > hg up -q -R "$repo" |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
129 > glog -R "$repo" |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
130 > hg -R "$repo" manifest --debug |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
131 > } |
5380
a5a7f7fd5554
convert_git: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5369
diff
changeset
|
132 |
12530
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
133 full conversion |
5380
a5a7f7fd5554
convert_git: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5369
diff
changeset
|
134 |
12530
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
135 $ hg -q convert --datesort git-repo2 fullrepo |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
136 $ hg up -q -R fullrepo |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
137 $ glog -R fullrepo |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
138 @ 9 "Discard change to foo" files: foo |
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 8 "change foo" files: foo |
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 | 7 "change bar" files: bar |
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 6 "(octopus merge fixup)" files: |
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 5 "Octopus merge" files: baz |
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 | | 4 "add baz" files: baz |
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 3 "add bar" files: bar |
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 | 2 "add quux" files: quux |
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 | o 1 "change foo" files: foo |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
155 |/ |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
156 o 0 "add foo" files: foo |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
157 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
158 $ hg -R fullrepo manifest --debug |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
159 245a3b8bc653999c2b22cdabd517ccb47aecafdf 644 bar |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
160 354ae8da6e890359ef49ade27b68bbc361f3ca88 644 baz |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
161 9277c9cc8dd4576fc01a17939b4351e5ada93466 644 foo |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
162 88dfeab657e8cf2cef3dec67b914f49791ae76b1 644 quux |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
163 $ splitrepo 'octopus merge' 'foo bar baz' |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
164 % foo bar baz: octopus merge |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
165 @ 8 "Discard change to foo" files: foo |
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 7 "change foo" files: foo |
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 | 6 "change bar" files: bar |
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 5 "(octopus merge fixup)" files: |
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 4 "Octopus merge" files: baz |
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 | | 3 "add baz" files: baz |
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 2 "add bar" files: bar |
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 | o 1 "change foo" files: foo |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
180 |/ |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
181 o 0 "add foo" files: foo |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
182 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
183 245a3b8bc653999c2b22cdabd517ccb47aecafdf 644 bar |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
184 354ae8da6e890359ef49ade27b68bbc361f3ca88 644 baz |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
185 9277c9cc8dd4576fc01a17939b4351e5ada93466 644 foo |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
186 $ 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
|
187 % 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
|
188 @ 6 "Discard change to foo" files: foo |
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 5 "change foo" files: foo |
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 4 "Octopus merge" files: |
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 3 "add baz" files: baz |
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 2 "add quux" files: quux |
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 o | 1 "change foo" files: foo |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
199 |/ |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
200 o 0 "add foo" files: foo |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
201 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
202 354ae8da6e890359ef49ade27b68bbc361f3ca88 644 baz |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
203 9277c9cc8dd4576fc01a17939b4351e5ada93466 644 foo |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
204 88dfeab657e8cf2cef3dec67b914f49791ae76b1 644 quux |
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 test binary conversion (issue 1359) |
5380
a5a7f7fd5554
convert_git: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5369
diff
changeset
|
207 |
12530
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
208 $ mkdir git-repo3 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
209 $ cd git-repo3 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
210 $ git init-db >/dev/null 2>/dev/null |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
211 $ 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
|
212 $ git add b |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
213 $ commit -a -m addbinary |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
214 $ cd .. |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
215 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
216 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
|
217 |
12530
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
218 $ hg convert git-repo3 git-repo3-hg |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
219 initializing destination git-repo3-hg repository |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
220 scanning source... |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
221 sorting... |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
222 converting... |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
223 0 addbinary |
13756
6b7077df4aa5
convert: add bookmarks reading support to git backend
Edouard Gomez <ed.gomez@free.fr>
parents:
12743
diff
changeset
|
224 updating bookmarks |
12530
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
225 $ cd git-repo3-hg |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
226 $ hg up -C |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
227 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
|
228 $ python -c 'print len(file("b", "rb").read())' |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
229 4096 |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
230 $ cd .. |
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 |
16893
46ccd44dd65b
test-convert-git: remove the read-only attribute of repository files
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents:
16892
diff
changeset
|
288 > import stat |
12530
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
289 > 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
|
290 > if files: |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
291 > path = os.path.join(root, files[0]) |
16893
46ccd44dd65b
test-convert-git: remove the read-only attribute of repository files
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents:
16892
diff
changeset
|
292 > if os.name == 'nt': |
46ccd44dd65b
test-convert-git: remove the read-only attribute of repository files
Eduard-Cristian Stefan <alexandrul.ct@gmail.com>
parents:
16892
diff
changeset
|
293 > os.chmod(path, stat.S_IWUSR) |
12530
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
294 > os.remove(path) |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
295 > break |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
296 > EOF |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
297 $ python damage.py |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
298 $ 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
|
299 > grep 'abort:' | sed 's/abort:.*/abort:/g' |
f11793a8c107
tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents:
10990
diff
changeset
|
300 abort: |