annotate tests/test-convert-git.t @ 26631:e077ce385609

localrepo: restore dirstate to one before rollbacking if not parent-gone 'localrepository.rollback()' explicilty restores dirstate, only if at least one of current parents of the working directory is removed at rollbacking (a.k.a "parent-gone"). After DirstateTransactionPlan, 'dirstate.write()' will cause marking '.hg/dirstate' as a file to be restored at rollbacking. https://mercurial.selenic.com/wiki/DirstateTransactionPlan Then, 'transaction.rollback()' restores '.hg/dirstate' regardless of parents of the working directory at that time, and this causes unexpected dirstate changes if not "parent-gone" (e.g. "hg update" to another branch after "hg commit" or so, then "hg rollback"). To avoid such situation, this patch restores dirstate to one before rollbacking if not "parent-gone". before: b1. restore dirstate explicitly, if "parent-gone" after: a1. save dirstate before actual rollbacking via dirstateguard a2. restore dirstate via 'transaction.rollback()' a3. if "parent-gone" - discard backup (a1) - restore dirstate from 'undo.dirstate' a4. otherwise, restore dirstate from backup (a1) Even though restoring dirstate at (a3) after (a2) seems redundant, this patch keeps this existing code path, because: - it isn't ensured that 'dirstate.write()' was invoked at least once while transaction running If not, '.hg/dirstate' isn't restored at (a2). In addition to it, rude 3rd party extension invoking 'dirstate.write()' without 'repo' while transaction running (see subsequent patches for detail) may break consistency of a file backup-ed by transaction. - this patch mainly focuses on changes for DirstateTransactionPlan Restoring dirstate at (a3) itself should be cheaper enough than rollbacking itself. Redundancy will be removed in next step. Newly added test is almost meaningless at this point. It will be used to detect regression while implementing delayed dirstate write out.
author FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
date Tue, 13 Oct 2015 12:25:43 -0700
parents e63d05fbae84
children 7e8912dbcea2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
22046
7a9cbb315d84 tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents: 21868
diff changeset
1 #require git
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
2
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 $ GIT_AUTHOR_NAME='test'; export GIT_AUTHOR_NAME
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
10 $ 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
11 $ 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
12 $ 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
13 $ 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
14 $ GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"; export GIT_COMMITTER_DATE
19121
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
15 $ INVALIDID1=afd12345af
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
16 $ INVALIDID2=28173x36ddd1e67bf7098d541130558ef5534a86
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
17 $ VALIDID1=39b3d83f9a69a9ba4ebb111461071a0af0027357
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
18 $ VALIDID2=8dd6476bd09d9c7776355dc454dafe38efaec5da
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
19 $ count=10
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
20 $ commit()
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
21 > {
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
22 > 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
23 > GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
24 > 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
25 > count=`expr $count + 1`
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
26 > }
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
27 $ mkdir git-repo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
28 $ cd git-repo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
29 $ git init-db >/dev/null 2>/dev/null
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
30 $ echo a > a
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
31 $ mkdir d
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
32 $ echo b > d/b
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
33 $ git add a d
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
34 $ 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
35
22183
4dd9f606d0a6 tests: fixup issue markers to make check-commit happy
Matt Mackall <mpm@selenic.com>
parents: 22046
diff changeset
36 Remove the directory, then try to replace it with a file (issue754)
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
37
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
38 $ git rm -f d/b
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
39 rm 'd/b'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
40 $ commit -m t2
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
41 $ echo d > d
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
42 $ git add d
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
43 $ commit -m t3
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
44 $ echo b >> a
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
45 $ commit -a -m t4.1
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
46 $ 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
47 $ echo c > a
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
48 $ echo a >> a
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
49 $ commit -a -m t4.2
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
50 $ git checkout master >/dev/null 2>/dev/null
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
51 $ 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
52 $ commit -m 'Merge branch other'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
53 $ cd ..
22412
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
54 $ hg convert --config extensions.progress= --config progress.assume-tty=1 \
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
55 > --config progress.delay=0 --config progress.changedelay=0 \
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
56 > --config progress.refresh=0 --config progress.width=60 \
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
57 > --datesort git-repo
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
58 \r (no-eol) (esc)
22413
3cb0318bb2dd convert: enable deterministic conversion progress bar for git
Augie Fackler <raf@durin42.com>
parents: 22412
diff changeset
59 scanning [======> ] 1/6\r (no-eol) (esc)
3cb0318bb2dd convert: enable deterministic conversion progress bar for git
Augie Fackler <raf@durin42.com>
parents: 22412
diff changeset
60 scanning [=============> ] 2/6\r (no-eol) (esc)
3cb0318bb2dd convert: enable deterministic conversion progress bar for git
Augie Fackler <raf@durin42.com>
parents: 22412
diff changeset
61 scanning [=====================> ] 3/6\r (no-eol) (esc)
3cb0318bb2dd convert: enable deterministic conversion progress bar for git
Augie Fackler <raf@durin42.com>
parents: 22412
diff changeset
62 scanning [============================> ] 4/6\r (no-eol) (esc)
3cb0318bb2dd convert: enable deterministic conversion progress bar for git
Augie Fackler <raf@durin42.com>
parents: 22412
diff changeset
63 scanning [===================================> ] 5/6\r (no-eol) (esc)
3cb0318bb2dd convert: enable deterministic conversion progress bar for git
Augie Fackler <raf@durin42.com>
parents: 22412
diff changeset
64 scanning [===========================================>] 6/6\r (no-eol) (esc)
22412
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
65 \r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
66 \r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
67 converting [ ] 0/6\r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
68 getting files [==================> ] 1/2\r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
69 getting files [======================================>] 2/2\r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
70 \r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
71 \r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
72 converting [======> ] 1/6\r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
73 getting files [======================================>] 1/1\r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
74 \r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
75 \r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
76 converting [=============> ] 2/6\r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
77 getting files [======================================>] 1/1\r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
78 \r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
79 \r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
80 converting [====================> ] 3/6\r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
81 getting files [======================================>] 1/1\r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
82 \r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
83 \r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
84 converting [===========================> ] 4/6\r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
85 getting files [======================================>] 1/1\r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
86 \r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
87 \r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
88 converting [==================================> ] 5/6\r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
89 getting files [======================================>] 1/1\r (no-eol) (esc)
dde99b827288 test-convert-git.t: add a test of convert progress bars for git
Augie Fackler <raf@durin42.com>
parents: 22183
diff changeset
90 \r (no-eol) (esc)
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
91 assuming destination git-repo-hg
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
92 initializing destination git-repo-hg repository
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
93 scanning source...
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
94 sorting...
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
95 converting...
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
96 5 t1
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
97 4 t2
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
98 3 t3
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
99 2 t4.1
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
100 1 t4.2
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
101 0 Merge branch other
13756
6b7077df4aa5 convert: add bookmarks reading support to git backend
Edouard Gomez <ed.gomez@free.fr>
parents: 12743
diff changeset
102 updating bookmarks
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
103 $ hg up -q -R git-repo-hg
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
104 $ hg -R git-repo-hg tip -v
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
105 changeset: 5:c78094926be2
13756
6b7077df4aa5 convert: add bookmarks reading support to git backend
Edouard Gomez <ed.gomez@free.fr>
parents: 12743
diff changeset
106 bookmark: master
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
107 tag: tip
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
108 parent: 3:f5f5cb45432b
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
109 parent: 4:4e174f80c67c
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
110 user: test <test@example.org>
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
111 date: Mon Jan 01 00:00:15 2007 +0000
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
112 files: a
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
113 description:
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
114 Merge branch other
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
115
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 $ count=10
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
118 $ mkdir git-repo2
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
119 $ cd git-repo2
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
120 $ git init-db >/dev/null 2>/dev/null
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
121 $ echo foo > foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
122 $ git add foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
123 $ commit -a -m 'add foo'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
124 $ echo >> foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
125 $ commit -a -m 'change foo'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
126 $ 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
127 $ echo quux >> quux
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
128 $ git add quux
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
129 $ commit -a -m 'add quux'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
130 $ echo bar > bar
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
131 $ git add bar
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
132 $ commit -a -m 'add bar'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
133 $ 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
134 $ echo baz > baz
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
135 $ git add baz
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
136 $ commit -a -m 'add baz'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
137 $ git checkout master >/dev/null 2>/dev/null
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
138 $ 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
139 $ commit -m 'Octopus merge'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
140 $ echo bar >> bar
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
141 $ commit -a -m 'change bar'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
142 $ 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
143 $ echo >> foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
144 $ commit -a -m 'change foo'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
145 $ git checkout master >/dev/null 2>/dev/null
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
146 $ 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
147 $ commit -m 'Discard change to foo'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
148 $ cd ..
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
149 $ glog()
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
150 > {
20117
aa9385f983fa tests: don't load unnecessary graphlog extension
Martin Geisler <martin@geisler.net>
parents: 19121
diff changeset
151 > hg log -G --template '{rev} "{desc|firstline}" files: {files}\n' "$@"
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
152 > }
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
153 $ splitrepo()
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
154 > {
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
155 > msg="$1"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
156 > files="$2"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
157 > opts=$3
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
158 > echo "% $files: $msg"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
159 > prefix=`echo "$files" | sed -e 's/ /-/g'`
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
160 > fmap="$prefix.fmap"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
161 > repo="$prefix.repo"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
162 > 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
163 > echo "include $i" >> "$fmap"
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
164 > done
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
165 > 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
166 > hg up -q -R "$repo"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
167 > glog -R "$repo"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
168 > hg -R "$repo" manifest --debug
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
169 > }
5380
a5a7f7fd5554 convert_git: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 5369
diff changeset
170
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
171 full conversion
5380
a5a7f7fd5554 convert_git: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 5369
diff changeset
172
24327
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
173 $ hg convert --datesort git-repo2 fullrepo \
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
174 > --config extensions.progress= --config progress.assume-tty=1 \
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
175 > --config progress.delay=0 --config progress.changedelay=0 \
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
176 > --config progress.refresh=0 --config progress.width=60
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
177 \r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
178 scanning [===> ] 1/9\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
179 scanning [========> ] 2/9\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
180 scanning [=============> ] 3/9\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
181 scanning [==================> ] 4/9\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
182 scanning [=======================> ] 5/9\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
183 scanning [============================> ] 6/9\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
184 scanning [=================================> ] 7/9\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
185 scanning [======================================> ] 8/9\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
186 scanning [===========================================>] 9/9\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
187 \r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
188 \r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
189 converting [ ] 0/9\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
190 getting files [======================================>] 1/1\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
191 \r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
192 \r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
193 converting [===> ] 1/9\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
194 getting files [======================================>] 1/1\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
195 \r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
196 \r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
197 converting [========> ] 2/9\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
198 getting files [======================================>] 1/1\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
199 \r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
200 \r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
201 converting [=============> ] 3/9\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
202 getting files [======================================>] 1/1\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
203 \r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
204 \r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
205 converting [=================> ] 4/9\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
206 getting files [======================================>] 1/1\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
207 \r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
208 \r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
209 converting [======================> ] 5/9\r (no-eol) (esc)
24328
603a8d09e12d convert: adjust progress bar for octopus merges (issue4169)
Augie Fackler <augie@google.com>
parents: 24327
diff changeset
210 getting files [===> ] 1/8\r (no-eol) (esc)
603a8d09e12d convert: adjust progress bar for octopus merges (issue4169)
Augie Fackler <augie@google.com>
parents: 24327
diff changeset
211 getting files [========> ] 2/8\r (no-eol) (esc)
603a8d09e12d convert: adjust progress bar for octopus merges (issue4169)
Augie Fackler <augie@google.com>
parents: 24327
diff changeset
212 getting files [=============> ] 3/8\r (no-eol) (esc)
603a8d09e12d convert: adjust progress bar for octopus merges (issue4169)
Augie Fackler <augie@google.com>
parents: 24327
diff changeset
213 getting files [==================> ] 4/8\r (no-eol) (esc)
603a8d09e12d convert: adjust progress bar for octopus merges (issue4169)
Augie Fackler <augie@google.com>
parents: 24327
diff changeset
214 getting files [=======================> ] 5/8\r (no-eol) (esc)
603a8d09e12d convert: adjust progress bar for octopus merges (issue4169)
Augie Fackler <augie@google.com>
parents: 24327
diff changeset
215 getting files [============================> ] 6/8\r (no-eol) (esc)
603a8d09e12d convert: adjust progress bar for octopus merges (issue4169)
Augie Fackler <augie@google.com>
parents: 24327
diff changeset
216 getting files [=================================> ] 7/8\r (no-eol) (esc)
603a8d09e12d convert: adjust progress bar for octopus merges (issue4169)
Augie Fackler <augie@google.com>
parents: 24327
diff changeset
217 getting files [======================================>] 8/8\r (no-eol) (esc)
24327
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
218 \r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
219 \r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
220 converting [===========================> ] 6/9\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
221 getting files [======================================>] 1/1\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
222 \r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
223 \r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
224 converting [===============================> ] 7/9\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
225 getting files [======================================>] 1/1\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
226 \r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
227 \r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
228 converting [====================================> ] 8/9\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
229 getting files [==================> ] 1/2\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
230 getting files [======================================>] 2/2\r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
231 \r (no-eol) (esc)
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
232 initializing destination fullrepo repository
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
233 scanning source...
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
234 sorting...
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
235 converting...
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
236 8 add foo
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
237 7 change foo
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
238 6 add quux
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
239 5 add bar
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
240 4 add baz
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
241 3 Octopus merge
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
242 2 change bar
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
243 1 change foo
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
244 0 Discard change to foo
f7c0556d22d7 test-convert-git: show insane progress bar with octopus merge (issue4169)
Augie Fackler <augie@google.com>
parents: 22947
diff changeset
245 updating bookmarks
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
246 $ hg up -q -R fullrepo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
247 $ glog -R fullrepo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
248 @ 9 "Discard change to foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
249 |\
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
250 | o 8 "change foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
251 | |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
252 o | 7 "change bar" files: bar
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
253 |/
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
254 o 6 "(octopus merge fixup)" files:
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
255 |\
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
256 | o 5 "Octopus merge" files: baz
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
257 | |\
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
258 o | | 4 "add baz" files: baz
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
259 | | |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
260 +---o 3 "add bar" files: bar
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
261 | |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
262 o | 2 "add quux" files: quux
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
263 | |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
264 | o 1 "change foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
265 |/
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
266 o 0 "add foo" files: foo
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 $ hg -R fullrepo manifest --debug
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
269 245a3b8bc653999c2b22cdabd517ccb47aecafdf 644 bar
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
270 354ae8da6e890359ef49ade27b68bbc361f3ca88 644 baz
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
271 9277c9cc8dd4576fc01a17939b4351e5ada93466 644 foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
272 88dfeab657e8cf2cef3dec67b914f49791ae76b1 644 quux
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
273 $ splitrepo 'octopus merge' 'foo bar baz'
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
274 % foo bar baz: octopus merge
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
275 @ 8 "Discard change to foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
276 |\
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
277 | o 7 "change foo" files: foo
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 o | 6 "change bar" files: bar
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
280 |/
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
281 o 5 "(octopus merge fixup)" files:
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
282 |\
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
283 | o 4 "Octopus merge" files: baz
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
284 | |\
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
285 o | | 3 "add baz" files: baz
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
286 | | |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
287 +---o 2 "add bar" files: bar
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
288 | |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
289 | o 1 "change foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
290 |/
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
291 o 0 "add foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
292
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
293 245a3b8bc653999c2b22cdabd517ccb47aecafdf 644 bar
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
294 354ae8da6e890359ef49ade27b68bbc361f3ca88 644 baz
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
295 9277c9cc8dd4576fc01a17939b4351e5ada93466 644 foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
296 $ 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
297 % 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
298 @ 6 "Discard change to foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
299 |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
300 o 5 "change foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
301 |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
302 o 4 "Octopus merge" files:
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
303 |\
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
304 | o 3 "add baz" files: baz
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
305 | |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
306 | o 2 "add quux" files: quux
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
307 | |
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
308 o | 1 "change foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
309 |/
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
310 o 0 "add foo" files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
311
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
312 354ae8da6e890359ef49ade27b68bbc361f3ca88 644 baz
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
313 9277c9cc8dd4576fc01a17939b4351e5ada93466 644 foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
314 88dfeab657e8cf2cef3dec67b914f49791ae76b1 644 quux
5380
a5a7f7fd5554 convert_git: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 5369
diff changeset
315
22470
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
316 test importing git renames and copies
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
317
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
318 $ cd git-repo2
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
319 $ git mv foo foo-renamed
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
320 since bar is not touched in this commit, this copy will not be detected
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
321 $ cp bar bar-copied
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
322 $ cp baz baz-copied
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
323 $ cp baz baz-copied2
25997
d4e1e947444b convert: fix git copy file content conversions
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
324 $ cp baz ba-copy
22470
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
325 $ echo baz2 >> baz
25997
d4e1e947444b convert: fix git copy file content conversions
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
326 $ git add bar-copied baz-copied baz-copied2 ba-copy
22470
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
327 $ commit -a -m 'rename and copy'
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
328 $ cd ..
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
329
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
330 input validation
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
331 $ hg convert --config convert.git.similarity=foo --datesort git-repo2 fullrepo
22511
b1ec65b3ba31 convert: simplify git.similarity parsing
Siddharth Agarwal <sid0@fb.com>
parents: 22471
diff changeset
332 abort: convert.git.similarity is not an integer ('foo')
22470
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
333 [255]
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
334 $ hg convert --config convert.git.similarity=-1 --datesort git-repo2 fullrepo
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
335 abort: similarity must be between 0 and 100
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
336 [255]
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
337 $ hg convert --config convert.git.similarity=101 --datesort git-repo2 fullrepo
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
338 abort: similarity must be between 0 and 100
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
339 [255]
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
340
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
341 $ hg -q convert --config convert.git.similarity=100 --datesort git-repo2 fullrepo
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
342 $ hg -R fullrepo status -C --change master
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
343 M baz
25997
d4e1e947444b convert: fix git copy file content conversions
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
344 A ba-copy
d4e1e947444b convert: fix git copy file content conversions
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
345 baz
22470
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
346 A bar-copied
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
347 A baz-copied
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
348 baz
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
349 A baz-copied2
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
350 baz
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
351 A foo-renamed
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
352 foo
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
353 R foo
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
354
25997
d4e1e947444b convert: fix git copy file content conversions
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
355 Ensure that the modification to the copy source was preserved
d4e1e947444b convert: fix git copy file content conversions
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
356 (there was a bug where if the copy dest was alphabetically prior to the copy
d4e1e947444b convert: fix git copy file content conversions
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
357 source, the copy source took the contents of the copy dest)
d4e1e947444b convert: fix git copy file content conversions
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
358 $ hg cat -r tip fullrepo/baz
d4e1e947444b convert: fix git copy file content conversions
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
359 baz
d4e1e947444b convert: fix git copy file content conversions
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
360 baz2
d4e1e947444b convert: fix git copy file content conversions
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
361
22471
cc5f94db672b convert: add support to find git copies from all files in the working copy
Siddharth Agarwal <sid0@fb.com>
parents: 22470
diff changeset
362 $ cd git-repo2
22558
064a912ebfc2 test-convert-git.t: make copy detection deterministic
Siddharth Agarwal <sid0@fb.com>
parents: 22511
diff changeset
363 $ echo bar2 >> bar
064a912ebfc2 test-convert-git.t: make copy detection deterministic
Siddharth Agarwal <sid0@fb.com>
parents: 22511
diff changeset
364 $ commit -a -m 'change bar'
22471
cc5f94db672b convert: add support to find git copies from all files in the working copy
Siddharth Agarwal <sid0@fb.com>
parents: 22470
diff changeset
365 $ cp bar bar-copied2
cc5f94db672b convert: add support to find git copies from all files in the working copy
Siddharth Agarwal <sid0@fb.com>
parents: 22470
diff changeset
366 $ git add bar-copied2
cc5f94db672b convert: add support to find git copies from all files in the working copy
Siddharth Agarwal <sid0@fb.com>
parents: 22470
diff changeset
367 $ commit -a -m 'copy with no changes'
cc5f94db672b convert: add support to find git copies from all files in the working copy
Siddharth Agarwal <sid0@fb.com>
parents: 22470
diff changeset
368 $ cd ..
cc5f94db672b convert: add support to find git copies from all files in the working copy
Siddharth Agarwal <sid0@fb.com>
parents: 22470
diff changeset
369
cc5f94db672b convert: add support to find git copies from all files in the working copy
Siddharth Agarwal <sid0@fb.com>
parents: 22470
diff changeset
370 $ hg -q convert --config convert.git.similarity=100 \
cc5f94db672b convert: add support to find git copies from all files in the working copy
Siddharth Agarwal <sid0@fb.com>
parents: 22470
diff changeset
371 > --config convert.git.findcopiesharder=1 --datesort git-repo2 fullrepo
cc5f94db672b convert: add support to find git copies from all files in the working copy
Siddharth Agarwal <sid0@fb.com>
parents: 22470
diff changeset
372 $ hg -R fullrepo status -C --change master
cc5f94db672b convert: add support to find git copies from all files in the working copy
Siddharth Agarwal <sid0@fb.com>
parents: 22470
diff changeset
373 A bar-copied2
cc5f94db672b convert: add support to find git copies from all files in the working copy
Siddharth Agarwal <sid0@fb.com>
parents: 22470
diff changeset
374 bar
cc5f94db672b convert: add support to find git copies from all files in the working copy
Siddharth Agarwal <sid0@fb.com>
parents: 22470
diff changeset
375
22183
4dd9f606d0a6 tests: fixup issue markers to make check-commit happy
Matt Mackall <mpm@selenic.com>
parents: 22046
diff changeset
376 test binary conversion (issue1359)
5380
a5a7f7fd5554 convert_git: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 5369
diff changeset
377
22470
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
378 $ count=19
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
379 $ mkdir git-repo3
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
380 $ cd git-repo3
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
381 $ git init-db >/dev/null 2>/dev/null
22947
c63a09b6b337 tests: use $PYTHON instead of hardcoding python
Augie Fackler <raf@durin42.com>
parents: 22558
diff changeset
382 $ $PYTHON -c 'file("b", "wb").write("".join([chr(i) for i in range(256)])*16)'
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
383 $ git add b
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
384 $ commit -a -m addbinary
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
385 $ cd ..
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
386
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
387 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
388
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
389 $ hg convert git-repo3 git-repo3-hg
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
390 initializing destination git-repo3-hg repository
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
391 scanning source...
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
392 sorting...
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
393 converting...
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
394 0 addbinary
13756
6b7077df4aa5 convert: add bookmarks reading support to git backend
Edouard Gomez <ed.gomez@free.fr>
parents: 12743
diff changeset
395 updating bookmarks
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
396 $ cd git-repo3-hg
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
397 $ hg up -C
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
398 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
22947
c63a09b6b337 tests: use $PYTHON instead of hardcoding python
Augie Fackler <raf@durin42.com>
parents: 22558
diff changeset
399 $ $PYTHON -c 'print len(file("b", "rb").read())'
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
400 4096
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
401 $ cd ..
7222
c1dc903dc7b6 convert: read git output in binary mode under Windows (issue 1359)
Patrick Mezard <pmezard@gmail.com>
parents: 5380
diff changeset
402
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
403 test author vs committer
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
404
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
405 $ mkdir git-repo4
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
406 $ cd git-repo4
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
407 $ git init-db >/dev/null 2>/dev/null
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
408 $ echo >> foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
409 $ git add foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
410 $ commit -a -m addfoo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
411 $ echo >> foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
412 $ GIT_AUTHOR_NAME="nottest"
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
413 $ commit -a -m addfoo2
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
414 $ cd ..
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
415
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
416 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
417
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
418 $ hg convert git-repo4 git-repo4-hg
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
419 initializing destination git-repo4-hg repository
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
420 scanning source...
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
421 sorting...
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
422 converting...
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
423 1 addfoo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
424 0 addfoo2
13756
6b7077df4aa5 convert: add bookmarks reading support to git backend
Edouard Gomez <ed.gomez@free.fr>
parents: 12743
diff changeset
425 updating bookmarks
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
426 $ hg -R git-repo4-hg log -v
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
427 changeset: 1:d63e967f93da
13756
6b7077df4aa5 convert: add bookmarks reading support to git backend
Edouard Gomez <ed.gomez@free.fr>
parents: 12743
diff changeset
428 bookmark: master
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
429 tag: tip
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
430 user: nottest <test@example.org>
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
431 date: Mon Jan 01 00:00:21 2007 +0000
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
432 files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
433 description:
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
434 addfoo2
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
435
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
436 committer: test <test@example.org>
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
437
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
438
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
439 changeset: 0:0735477b0224
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
440 user: test <test@example.org>
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
441 date: Mon Jan 01 00:00:20 2007 +0000
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
442 files: foo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
443 description:
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
444 addfoo
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
445
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
446
8691
a0a541d6fed6 convert: fail fast if source does not support --sourcesort
Patrick Mezard <pmezard@gmail.com>
parents: 8523
diff changeset
447
12530
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
448 --sourceorder should fail
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
449
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
450 $ hg convert --sourcesort git-repo4 git-repo4-sourcesort-hg
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
451 initializing destination git-repo4-sourcesort-hg repository
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
452 abort: --sourcesort is not supported by this data source
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
453 [255]
f11793a8c107 tests: unify test-convert-git
Matt Mackall <mpm@selenic.com>
parents: 10990
diff changeset
454
25749
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
455 test converting certain branches
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
456
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
457 $ mkdir git-testrevs
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
458 $ cd git-testrevs
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
459 $ git init
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
460 Initialized empty Git repository in $TESTTMP/git-testrevs/.git/
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
461 $ echo a >> a ; git add a > /dev/null; git commit -m 'first' > /dev/null
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
462 $ echo a >> a ; git add a > /dev/null; git commit -m 'master commit' > /dev/null
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
463 $ git checkout -b goodbranch 'HEAD^'
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
464 Switched to a new branch 'goodbranch'
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
465 $ echo a >> b ; git add b > /dev/null; git commit -m 'good branch commit' > /dev/null
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
466 $ git checkout -b badbranch 'HEAD^'
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
467 Switched to a new branch 'badbranch'
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
468 $ echo a >> c ; git add c > /dev/null; git commit -m 'bad branch commit' > /dev/null
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
469 $ cd ..
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
470 $ hg convert git-testrevs hg-testrevs --rev master --rev goodbranch
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
471 initializing destination hg-testrevs repository
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
472 scanning source...
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
473 sorting...
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
474 converting...
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
475 2 first
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
476 1 good branch commit
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
477 0 master commit
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
478 updating bookmarks
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
479 $ cd hg-testrevs
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
480 $ hg log -G -T '{rev} {bookmarks}'
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
481 o 2 master
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
482 |
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
483 | o 1 goodbranch
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
484 |/
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
485 o 0
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
486
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
487 $ cd ..
f2748cc43b2a convert: support multiple specifed revs in git source
Durham Goode <durham@fb.com>
parents: 25722
diff changeset
488
17929
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
489 test sub modules
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
490
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
491 $ mkdir git-repo5
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
492 $ cd git-repo5
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
493 $ git init-db >/dev/null 2>/dev/null
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
494 $ echo 'sub' >> foo
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
495 $ git add foo
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
496 $ commit -a -m 'addfoo'
18508
813b7a1f7036 tests: use `pwd` instead of ${PWD} in test-convert-git.t - because of Solaris
Mads Kiilerich <mads@kiilerich.com>
parents: 17929
diff changeset
497 $ BASE=`pwd`
17929
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
498 $ cd ..
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
499 $ mkdir git-repo6
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
500 $ cd git-repo6
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
501 $ git init-db >/dev/null 2>/dev/null
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
502 $ git submodule add ${BASE} >/dev/null 2>/dev/null
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
503 $ commit -a -m 'addsubmodule' >/dev/null 2>/dev/null
25698
307370c2dda2 convert: handle .gitmodules with non-tab whitespaces
Durham Goode <durham@fb.com>
parents: 24328
diff changeset
504
307370c2dda2 convert: handle .gitmodules with non-tab whitespaces
Durham Goode <durham@fb.com>
parents: 24328
diff changeset
505 test non-tab whitespace .gitmodules
307370c2dda2 convert: handle .gitmodules with non-tab whitespaces
Durham Goode <durham@fb.com>
parents: 24328
diff changeset
506
307370c2dda2 convert: handle .gitmodules with non-tab whitespaces
Durham Goode <durham@fb.com>
parents: 24328
diff changeset
507 $ cat >> .gitmodules <<EOF
307370c2dda2 convert: handle .gitmodules with non-tab whitespaces
Durham Goode <durham@fb.com>
parents: 24328
diff changeset
508 > [submodule "git-repo5"]
307370c2dda2 convert: handle .gitmodules with non-tab whitespaces
Durham Goode <durham@fb.com>
parents: 24328
diff changeset
509 > path = git-repo5
25722
eb15c5be381c test-convert-git: use a relative gitmodule url
Matt Harbison <matt_harbison@yahoo.com>
parents: 25721
diff changeset
510 > url = git-repo5
25698
307370c2dda2 convert: handle .gitmodules with non-tab whitespaces
Durham Goode <durham@fb.com>
parents: 24328
diff changeset
511 > EOF
25721
5b9b70635423 test-convert-git: stablize for git 1.7.7.6
Matt Harbison <matt_harbison@yahoo.com>
parents: 25699
diff changeset
512 $ git commit -q -a -m "weird white space submodule"
25698
307370c2dda2 convert: handle .gitmodules with non-tab whitespaces
Durham Goode <durham@fb.com>
parents: 24328
diff changeset
513 $ cd ..
307370c2dda2 convert: handle .gitmodules with non-tab whitespaces
Durham Goode <durham@fb.com>
parents: 24328
diff changeset
514 $ hg convert git-repo6 hg-repo6
307370c2dda2 convert: handle .gitmodules with non-tab whitespaces
Durham Goode <durham@fb.com>
parents: 24328
diff changeset
515 initializing destination hg-repo6 repository
307370c2dda2 convert: handle .gitmodules with non-tab whitespaces
Durham Goode <durham@fb.com>
parents: 24328
diff changeset
516 scanning source...
307370c2dda2 convert: handle .gitmodules with non-tab whitespaces
Durham Goode <durham@fb.com>
parents: 24328
diff changeset
517 sorting...
307370c2dda2 convert: handle .gitmodules with non-tab whitespaces
Durham Goode <durham@fb.com>
parents: 24328
diff changeset
518 converting...
307370c2dda2 convert: handle .gitmodules with non-tab whitespaces
Durham Goode <durham@fb.com>
parents: 24328
diff changeset
519 1 addsubmodule
307370c2dda2 convert: handle .gitmodules with non-tab whitespaces
Durham Goode <durham@fb.com>
parents: 24328
diff changeset
520 0 weird white space submodule
307370c2dda2 convert: handle .gitmodules with non-tab whitespaces
Durham Goode <durham@fb.com>
parents: 24328
diff changeset
521 updating bookmarks
307370c2dda2 convert: handle .gitmodules with non-tab whitespaces
Durham Goode <durham@fb.com>
parents: 24328
diff changeset
522
307370c2dda2 convert: handle .gitmodules with non-tab whitespaces
Durham Goode <durham@fb.com>
parents: 24328
diff changeset
523 $ rm -rf hg-repo6
307370c2dda2 convert: handle .gitmodules with non-tab whitespaces
Durham Goode <durham@fb.com>
parents: 24328
diff changeset
524 $ cd git-repo6
307370c2dda2 convert: handle .gitmodules with non-tab whitespaces
Durham Goode <durham@fb.com>
parents: 24328
diff changeset
525 $ git reset --hard 'HEAD^' > /dev/null
25699
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
526
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
527 test missing .gitmodules
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
528
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
529 $ git submodule add ../git-repo4 >/dev/null 2>/dev/null
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
530 $ git checkout HEAD .gitmodules
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
531 $ git rm .gitmodules
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
532 rm '.gitmodules'
25721
5b9b70635423 test-convert-git: stablize for git 1.7.7.6
Matt Harbison <matt_harbison@yahoo.com>
parents: 25699
diff changeset
533 $ git commit -q -m "remove .gitmodules" .gitmodules
5b9b70635423 test-convert-git: stablize for git 1.7.7.6
Matt Harbison <matt_harbison@yahoo.com>
parents: 25699
diff changeset
534 $ git commit -q -m "missing .gitmodules"
25699
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
535 $ cd ..
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
536 $ hg convert git-repo6 hg-repo6 --traceback
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
537 fatal: Path '.gitmodules' does not exist in '*' (glob)
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
538 initializing destination hg-repo6 repository
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
539 scanning source...
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
540 sorting...
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
541 converting...
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
542 2 addsubmodule
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
543 1 remove .gitmodules
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
544 0 missing .gitmodules
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
545 warning: cannot read submodules config file in * (glob)
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
546 updating bookmarks
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
547 $ rm -rf hg-repo6
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
548 $ cd git-repo6
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
549 $ rm -rf git-repo4
5c97a4ecbdd4 convert: improve support for unusual .gitmodules
Durham Goode <durham@fb.com>
parents: 25698
diff changeset
550 $ git reset --hard 'HEAD^^' > /dev/null
17929
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
551 $ cd ..
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
552
19121
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
553 test invalid splicemap1
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
554
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
555 $ cat > splicemap <<EOF
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
556 > $VALIDID1
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
557 > EOF
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
558 $ hg convert --splicemap splicemap git-repo2 git-repo2-splicemap1-hg
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
559 initializing destination git-repo2-splicemap1-hg repository
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
560 abort: syntax error in splicemap(1): child parent1[,parent2] expected
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
561 [255]
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
562
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
563 test invalid splicemap2
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
564
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
565 $ cat > splicemap <<EOF
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
566 > $VALIDID1 $VALIDID2, $VALIDID2, $VALIDID2
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
567 > EOF
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
568 $ hg convert --splicemap splicemap git-repo2 git-repo2-splicemap2-hg
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
569 initializing destination git-repo2-splicemap2-hg repository
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
570 abort: syntax error in splicemap(1): child parent1[,parent2] expected
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
571 [255]
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
572
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
573 test invalid splicemap3
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
574
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
575 $ cat > splicemap <<EOF
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
576 > $INVALIDID1 $INVALIDID2
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
577 > EOF
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
578 $ hg convert --splicemap splicemap git-repo2 git-repo2-splicemap3-hg
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
579 initializing destination git-repo2-splicemap3-hg repository
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
580 abort: splicemap entry afd12345af is not a valid revision identifier
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
581 [255]
478a04605ce1 splicemap: improve error handling when source is git (issue2084)
Ben Goswami <bengoswami@fb.com>
parents: 18571
diff changeset
582
17929
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
583 convert sub modules
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
584 $ hg convert git-repo6 git-repo6-hg
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
585 initializing destination git-repo6-hg repository
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
586 scanning source...
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
587 sorting...
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
588 converting...
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
589 0 addsubmodule
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
590 updating bookmarks
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
591 $ hg -R git-repo6-hg log -v
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
592 changeset: 0:* (glob)
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
593 bookmark: master
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
594 tag: tip
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
595 user: nottest <test@example.org>
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
596 date: Mon Jan 01 00:00:23 2007 +0000
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
597 files: .hgsub .hgsubstate
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
598 description:
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
599 addsubmodule
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
600
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
601 committer: test <test@example.org>
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
602
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
603
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
604
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
605 $ cd git-repo6-hg
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
606 $ hg up >/dev/null 2>/dev/null
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
607 $ cat .hgsubstate
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
608 * git-repo5 (glob)
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
609 $ cd git-repo5
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
610 $ cat foo
0eed66327ad4 convert: add support for converting git submodule (issue3528)
YaNan Xu <robot9@fb.com>
parents: 16954
diff changeset
611 sub
18571
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
612
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
613 $ cd ../..
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
614
22470
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
615 make sure rename detection doesn't break removing and adding gitmodules
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
616
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
617 $ cd git-repo6
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
618 $ git mv .gitmodules .gitmodules-renamed
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
619 $ commit -a -m 'rename .gitmodules'
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
620 $ git mv .gitmodules-renamed .gitmodules
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
621 $ commit -a -m 'rename .gitmodules back'
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
622 $ cd ..
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
623
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
624 $ hg --config convert.git.similarity=100 convert -q git-repo6 git-repo6-hg
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
625 $ hg -R git-repo6-hg log -r 'tip^' -T "{desc|firstline}\n"
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
626 rename .gitmodules
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
627 $ hg -R git-repo6-hg status -C --change 'tip^'
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
628 A .gitmodules-renamed
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
629 R .hgsub
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
630 R .hgsubstate
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
631 $ hg -R git-repo6-hg log -r tip -T "{desc|firstline}\n"
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
632 rename .gitmodules back
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
633 $ hg -R git-repo6-hg status -C --change tip
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
634 A .hgsub
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
635 A .hgsubstate
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
636 R .gitmodules-renamed
8e0c4df28eec convert: add support to detect git renames and copies
Siddharth Agarwal <sid0@fb.com>
parents: 22413
diff changeset
637
21868
3420346174b1 convert: detect removal of ".gitmodules" at git source revisions correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20117
diff changeset
638 convert the revision removing '.gitmodules' itself (and related
3420346174b1 convert: detect removal of ".gitmodules" at git source revisions correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20117
diff changeset
639 submodules)
3420346174b1 convert: detect removal of ".gitmodules" at git source revisions correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20117
diff changeset
640
3420346174b1 convert: detect removal of ".gitmodules" at git source revisions correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20117
diff changeset
641 $ cd git-repo6
3420346174b1 convert: detect removal of ".gitmodules" at git source revisions correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20117
diff changeset
642 $ git rm .gitmodules
3420346174b1 convert: detect removal of ".gitmodules" at git source revisions correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20117
diff changeset
643 rm '.gitmodules'
3420346174b1 convert: detect removal of ".gitmodules" at git source revisions correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20117
diff changeset
644 $ git rm --cached git-repo5
3420346174b1 convert: detect removal of ".gitmodules" at git source revisions correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20117
diff changeset
645 rm 'git-repo5'
3420346174b1 convert: detect removal of ".gitmodules" at git source revisions correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20117
diff changeset
646 $ commit -a -m 'remove .gitmodules and submodule git-repo5'
3420346174b1 convert: detect removal of ".gitmodules" at git source revisions correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20117
diff changeset
647 $ cd ..
3420346174b1 convert: detect removal of ".gitmodules" at git source revisions correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20117
diff changeset
648
3420346174b1 convert: detect removal of ".gitmodules" at git source revisions correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20117
diff changeset
649 $ hg convert -q git-repo6 git-repo6-hg
3420346174b1 convert: detect removal of ".gitmodules" at git source revisions correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20117
diff changeset
650 $ hg -R git-repo6-hg tip -T "{desc|firstline}\n"
3420346174b1 convert: detect removal of ".gitmodules" at git source revisions correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20117
diff changeset
651 remove .gitmodules and submodule git-repo5
3420346174b1 convert: detect removal of ".gitmodules" at git source revisions correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20117
diff changeset
652 $ hg -R git-repo6-hg tip -T "{file_dels}\n"
3420346174b1 convert: detect removal of ".gitmodules" at git source revisions correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20117
diff changeset
653 .hgsub .hgsubstate
3420346174b1 convert: detect removal of ".gitmodules" at git source revisions correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20117
diff changeset
654
26077
e63d05fbae84 convert: add convert.git.skipsubmodules option
Durham Goode <durham@fb.com>
parents: 26047
diff changeset
655 skip submodules in the conversion
e63d05fbae84 convert: add convert.git.skipsubmodules option
Durham Goode <durham@fb.com>
parents: 26047
diff changeset
656
e63d05fbae84 convert: add convert.git.skipsubmodules option
Durham Goode <durham@fb.com>
parents: 26047
diff changeset
657 $ hg convert -q git-repo6 no-submodules --config convert.git.skipsubmodules=True
e63d05fbae84 convert: add convert.git.skipsubmodules option
Durham Goode <durham@fb.com>
parents: 26047
diff changeset
658 $ hg -R no-submodules manifest --all
e63d05fbae84 convert: add convert.git.skipsubmodules option
Durham Goode <durham@fb.com>
parents: 26047
diff changeset
659 .gitmodules-renamed
e63d05fbae84 convert: add convert.git.skipsubmodules option
Durham Goode <durham@fb.com>
parents: 26047
diff changeset
660
25787
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
661 convert using a different remote prefix
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
662 $ git init git-repo7
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
663 Initialized empty Git repository in $TESTTMP/git-repo7/.git/
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
664 $ cd git-repo7
26040
97208371715a test-convert-git: work around output format changes in git
Augie Fackler <augie@google.com>
parents: 25997
diff changeset
665 TODO: it'd be nice to use (?) lines instead of grep -v to handle the
97208371715a test-convert-git: work around output format changes in git
Augie Fackler <augie@google.com>
parents: 25997
diff changeset
666 git output variance, but that doesn't currently work in the middle of
97208371715a test-convert-git: work around output format changes in git
Augie Fackler <augie@google.com>
parents: 25997
diff changeset
667 a block, so do this for now.
97208371715a test-convert-git: work around output format changes in git
Augie Fackler <augie@google.com>
parents: 25997
diff changeset
668 $ touch a && git add a && git commit -am "commit a" | grep -v changed
25787
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
669 [master (root-commit) 8ae5f69] commit a
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
670 Author: nottest <test@example.org>
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
671 create mode 100644 a
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
672 $ cd ..
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
673 $ git clone git-repo7 git-repo7-client
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
674 Cloning into 'git-repo7-client'...
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
675 done.
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
676 $ hg convert --config convert.git.remoteprefix=origin git-repo7-client hg-repo7
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
677 initializing destination hg-repo7 repository
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
678 scanning source...
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
679 sorting...
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
680 converting...
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
681 0 commit a
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
682 updating bookmarks
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
683 $ hg -R hg-repo7 bookmarks
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
684 master 0:03bf38caa4c6
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
685 origin/master 0:03bf38caa4c6
d9133e89d39d convert: allow customizing git remote prefix
Durham Goode <durham@fb.com>
parents: 25749
diff changeset
686
25905
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
687 Run convert when the remote branches have changed
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
688 (there was an old bug where the local convert read branches from the server)
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
689
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
690 $ cd git-repo7
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
691 $ echo a >> a
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
692 $ git commit -am "move master forward"
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
693 [master 0c81947] move master forward
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
694 Author: nottest <test@example.org>
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
695 1 file changed, 1 insertion(+)
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
696 $ cd ..
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
697 $ rm -rf hg-repo7
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
698 $ hg convert --config convert.git.remoteprefix=origin git-repo7-client hg-repo7
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
699 initializing destination hg-repo7 repository
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
700 scanning source...
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
701 sorting...
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
702 converting...
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
703 0 commit a
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
704 updating bookmarks
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
705 $ hg -R hg-repo7 bookmarks
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
706 master 0:03bf38caa4c6
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
707 origin/master 0:03bf38caa4c6
80149d0b6842 convert: fix git convert using servers branches
Durham Goode <durham@fb.com>
parents: 25787
diff changeset
708
18571
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
709 damaged git repository tests:
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
710 In case the hard-coded hashes change, the following commands can be used to
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
711 list the hashes and their corresponding types in the repository:
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
712 cd git-repo4/.git/objects
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
713 find . -type f | cut -c 3- | sed 's_/__' | xargs -n 1 -t git cat-file -t
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
714 cd ../../..
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
715
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
716 damage git repository by renaming a commit object
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
717 $ COMMIT_OBJ=1c/0ce3c5886f83a1d78a7b517cdff5cf9ca17bdd
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
718 $ mv git-repo4/.git/objects/$COMMIT_OBJ git-repo4/.git/objects/$COMMIT_OBJ.tmp
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
719 $ hg convert git-repo4 git-repo4-broken-hg 2>&1 | grep 'abort:'
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
720 abort: cannot read tags from git-repo4/.git
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
721 $ mv git-repo4/.git/objects/$COMMIT_OBJ.tmp git-repo4/.git/objects/$COMMIT_OBJ
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
722 damage git repository by renaming a blob object
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
723
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
724 $ BLOB_OBJ=8b/137891791fe96927ad78e64b0aad7bded08bdc
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
725 $ mv git-repo4/.git/objects/$BLOB_OBJ git-repo4/.git/objects/$BLOB_OBJ.tmp
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
726 $ hg convert git-repo4 git-repo4-broken-hg 2>&1 | grep 'abort:'
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
727 abort: cannot read 'blob' object at 8b137891791fe96927ad78e64b0aad7bded08bdc
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
728 $ mv git-repo4/.git/objects/$BLOB_OBJ.tmp git-repo4/.git/objects/$BLOB_OBJ
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
729 damage git repository by renaming a tree object
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
730
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
731 $ TREE_OBJ=72/49f083d2a63a41cc737764a86981eb5f3e4635
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
732 $ mv git-repo4/.git/objects/$TREE_OBJ git-repo4/.git/objects/$TREE_OBJ.tmp
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
733 $ hg convert git-repo4 git-repo4-broken-hg 2>&1 | grep 'abort:'
ad5817505834 test-convert-git: stabilize corruption of test git repo
Ross Lagerwall <rosslagerwall@gmail.com>
parents: 18508
diff changeset
734 abort: cannot read changes in 1c0ce3c5886f83a1d78a7b517cdff5cf9ca17bdd