Mercurial > hg
annotate tests/test-convert-bzr-114.t @ 18944:a9c443b3b240
unionrepo: read-only operations on a union of two localrepos
unionrepo is just like bundlerepo without bundles.
The implementation is very similar to bundlerepo, but I don't see any obvious
way to generalize it.
Some most obvious use cases for this would be log and diff across local repos,
as a kind of preview of pulls, for instance:
$ hg -R union:repo1+repo2 heads
$ hg -R union:repo1+repo2 log -r REPO1REV -r REPO2REV
$ hg -R union:repo1+repo2 log -r '::REPO1REV-::REPO2REV'
$ hg -R union:repo1+repo2 log -r 'ancestor(REPO1REV,REPO2REV)'
$ hg -R union:repo1+repo2 diff -r REPO1REV -r REPO2REV
This is going to be used in RhodeCode, and Bitbucket already uses something
similar. Having a core implementation would be beneficial.
author | Mads Kiilerich <madski@unity3d.com> |
---|---|
date | Fri, 18 Jan 2013 15:54:09 +0100 |
parents | d1f88ae495b4 |
children | 7a9cbb315d84 |
rev | line source |
---|---|
12513
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
1 |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
2 $ "$TESTDIR/hghave" bzr114 || exit 80 |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
3 $ . "$TESTDIR/bzr-definitions" |
8126
13b36eb14324
convert/bzr: handle files replaced by directories (issue1623)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
4 |
12513
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
5 The file/directory replacement can only be reproduced on |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
6 bzr >= 1.4. Merge it back in test-convert-bzr-directories once |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
7 this version becomes mainstream. |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
8 replace file with dir |
8126
13b36eb14324
convert/bzr: handle files replaced by directories (issue1623)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
9 |
12513
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
10 $ mkdir test-replace-file-with-dir |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
11 $ cd test-replace-file-with-dir |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
12 $ bzr init -q source |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
13 $ cd source |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
14 $ echo d > d |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
15 $ bzr add -q d |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
16 $ bzr commit -q -m 'add d file' |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
17 $ rm d |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
18 $ mkdir d |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
19 $ bzr add -q d |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
20 $ bzr commit -q -m 'replace with d dir' |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
21 $ echo a > d/a |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
22 $ bzr add -q d/a |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
23 $ bzr commit -q -m 'add d/a' |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
24 $ cd .. |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
25 $ hg convert source source-hg |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
26 initializing destination source-hg repository |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
27 scanning source... |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
28 sorting... |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
29 converting... |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
30 2 add d file |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
31 1 replace with d dir |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
32 0 add d/a |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
33 $ manifest source-hg tip |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
34 % manifest of tip |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
35 644 d/a |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
36 $ cd source-hg |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
37 $ hg update |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
38 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d1f88ae495b4
tests: unify test-convert-bzr-114
Matt Mackall <mpm@selenic.com>
parents:
8126
diff
changeset
|
39 $ cd ../.. |