Mercurial > hg
annotate tests/test-conflict.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 | 2371f4aea665 |
children | 25d5a9ecbb85 |
rev | line source |
---|---|
11797
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
1 $ hg init |
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
2 $ echo "nothing" > a |
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
3 $ hg add a |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11797
diff
changeset
|
4 $ hg commit -m ancestor |
11797
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
5 $ echo "something" > a |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11797
diff
changeset
|
6 $ hg commit -m branch1 |
11797
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
7 $ hg co 0 |
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
8 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
9 $ echo "something else" > a |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11797
diff
changeset
|
10 $ hg commit -m branch2 |
11797
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
11 created new head |
346 | 12 |
11797
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
13 $ hg merge 1 |
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
14 merging a |
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
15 warning: conflicts during merge. |
15501
2371f4aea665
merge: give a special message for internal:merge failure (issue3105)
Matt Mackall <mpm@selenic.com>
parents:
12316
diff
changeset
|
16 merging a incomplete! (edit conflicts, then use 'hg resolve --mark') |
11797
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
17 0 files updated, 0 files merged, 0 files removed, 1 files unresolved |
12314
f2daa6ab514a
merge: suggest 'hg up -C .' for discarding changes, not 'hg up -C'
Brodie Rao <brodie@bitheap.org>
parents:
12156
diff
changeset
|
18 use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12314
diff
changeset
|
19 [1] |
11797
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
20 |
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
21 $ hg id |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11797
diff
changeset
|
22 32e80765d7fe+75234512624c+ tip |
11797
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
23 |
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
24 $ cat a |
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
25 <<<<<<< local |
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
26 something else |
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
27 ======= |
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
28 something |
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
29 >>>>>>> other |
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
30 |
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
31 $ hg status |
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
32 M a |
66e4e8e8b1e5
tests: unify test-conflict
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
4387
diff
changeset
|
33 ? a.orig |