annotate tests/test-basic.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 2944a6d35158
children a3ca1d032926
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11742
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
1 Create a repository:
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
2
13956
ffb5c09ba822 tests: remove redundant mkdir
Martin Geisler <mg@lazybytes.net>
parents: 13568
diff changeset
3 $ hg init t
11742
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
4 $ cd t
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
5
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
6 Make a changeset:
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
7
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
8 $ echo a > a
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
9 $ hg add a
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11742
diff changeset
10 $ hg commit -m test
11742
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
11
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
12 This command is ancient:
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
13
11742
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
14 $ hg history
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11742
diff changeset
15 changeset: 0:acb14030fe0a
11742
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
16 tag: tip
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
17 user: test
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11742
diff changeset
18 date: Thu Jan 01 00:00:00 1970 +0000
11742
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
19 summary: test
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
20
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
21
13568
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
22 Verify that updating to revision 0 via commands.update() works properly
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
23
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
24 $ cat <<EOF > update_to_rev0.py
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
25 > from mercurial import ui, hg, commands
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
26 > myui = ui.ui()
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
27 > repo = hg.repository(myui, path='.')
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
28 > commands.update(myui, repo, rev=0)
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
29 > EOF
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
30 $ hg up null
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
31 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
32 $ python ./update_to_rev0.py
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
33 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
34 $ hg identify -n
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
35 0
17346
2944a6d35158 check-code: fix check for trailing whitespace on empty lines
Mads Kiilerich <mads@kiilerich.com>
parents: 16913
diff changeset
36
13568
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
37
11742
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
38 Poke around at hashes:
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
39
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
40 $ hg manifest --debug
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
41 b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 644 a
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
42
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
43 $ hg cat a
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
44 a
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
45
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
46 Verify should succeed:
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
47
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
48 $ hg verify
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
49 checking changesets
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
50 checking manifests
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
51 crosschecking files in changesets and manifests
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
52 checking files
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
53 1 files, 1 changesets, 1 total revisions
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
54
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
55 At the end...
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
56
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
57 $ cd ..