annotate tests/test-share.t @ 33331:4bae3c117b57

scmutil: make cleanupnodes delete divergent bookmarks cleanupnodes takes care of bookmark movement, and bookmark movement could cause bookmark divergent resolution as a side effect. This patch adds such bookmark divergent resolution logic so future rebase migration will be easier. The revset is carefully written to be equivalent to what rebase does today. Although I think it might make sense to remove divergent bookmarks more aggressively, for example: F book@1 | E book@2 | | D book | | | C |/ B book@3 | A When rebase -s C -d E, "book@1" will be removed, "book@3" will be kept, and the end result is: D book | C | F | E book@2 (?) | B book@3 | A The question is should we keep book@2? The current logic keeps it. If we choose not to (makes some sense to me), the "deleterevs" revset could be simplified to "newnode % oldnode". For now, I just make it compatible with the existing behavior. If we want to make the "deleterevs" revset simpler, we can always do it in the future.
author Jun Wu <quark@fb.com>
date Mon, 26 Jun 2017 13:13:51 -0700
parents fe0667cc521e
children 460733327640
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: 17539
diff changeset
1 #require killdaemons
9990
c1d940d31aea share: add a test script.
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
2
12487
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
3 $ echo "[extensions]" >> $HGRCPATH
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
4 $ echo "share = " >> $HGRCPATH
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
5
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
6 prepare repo1
9990
c1d940d31aea share: add a test script.
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
7
12487
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
8 $ hg init repo1
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
9 $ cd repo1
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
10 $ echo a > a
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
11 $ hg commit -A -m'init'
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
12 adding a
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
13
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
14 share it
9990
c1d940d31aea share: add a test script.
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
15
12487
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
16 $ cd ..
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
17 $ hg share repo1 repo2
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
18 updating working directory
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
19 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
20
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
21 share shouldn't have a store dir
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
22
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
23 $ cd repo2
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
24 $ test -d .hg/store
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
25 [1]
9990
c1d940d31aea share: add a test script.
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
26
12487
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
27 Some sed versions appends newline, some don't, and some just fails
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
28
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
29 $ cat .hg/sharedpath; echo
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 15446
diff changeset
30 $TESTTMP/repo1/.hg (glob)
12487
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
31
15101
a21ccf4412d5 share: allow trailing newline on .hg/sharedpath.
Greg Ward <greg@gerg.ca>
parents: 15080
diff changeset
32 trailing newline on .hg/sharedpath is ok
a21ccf4412d5 share: allow trailing newline on .hg/sharedpath.
Greg Ward <greg@gerg.ca>
parents: 15080
diff changeset
33 $ hg tip -q
a21ccf4412d5 share: allow trailing newline on .hg/sharedpath.
Greg Ward <greg@gerg.ca>
parents: 15080
diff changeset
34 0:d3873e73d99e
a21ccf4412d5 share: allow trailing newline on .hg/sharedpath.
Greg Ward <greg@gerg.ca>
parents: 15080
diff changeset
35 $ echo '' >> .hg/sharedpath
a21ccf4412d5 share: allow trailing newline on .hg/sharedpath.
Greg Ward <greg@gerg.ca>
parents: 15080
diff changeset
36 $ cat .hg/sharedpath
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 15446
diff changeset
37 $TESTTMP/repo1/.hg (glob)
15101
a21ccf4412d5 share: allow trailing newline on .hg/sharedpath.
Greg Ward <greg@gerg.ca>
parents: 15080
diff changeset
38 $ hg tip -q
a21ccf4412d5 share: allow trailing newline on .hg/sharedpath.
Greg Ward <greg@gerg.ca>
parents: 15080
diff changeset
39 0:d3873e73d99e
a21ccf4412d5 share: allow trailing newline on .hg/sharedpath.
Greg Ward <greg@gerg.ca>
parents: 15080
diff changeset
40
12487
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
41 commit in shared clone
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
42
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
43 $ echo a >> a
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
44 $ hg commit -m'change in shared clone'
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
45
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
46 check original
9990
c1d940d31aea share: add a test script.
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
47
12487
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
48 $ cd ../repo1
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
49 $ hg log
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
50 changeset: 1:8af4dc49db9e
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
51 tag: tip
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
52 user: test
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
53 date: Thu Jan 01 00:00:00 1970 +0000
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
54 summary: change in shared clone
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
55
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
56 changeset: 0:d3873e73d99e
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
57 user: test
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
58 date: Thu Jan 01 00:00:00 1970 +0000
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
59 summary: init
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
60
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
61 $ hg update
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
62 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
63 $ cat a # should be two lines of "a"
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
64 a
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
65 a
9990
c1d940d31aea share: add a test script.
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
66
12487
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
67 commit in original
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
68
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
69 $ echo b > b
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
70 $ hg commit -A -m'another file'
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
71 adding b
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
72
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
73 check in shared clone
9990
c1d940d31aea share: add a test script.
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
74
12487
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
75 $ cd ../repo2
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
76 $ hg log
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
77 changeset: 2:c2e0ac586386
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
78 tag: tip
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
79 user: test
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
80 date: Thu Jan 01 00:00:00 1970 +0000
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
81 summary: another file
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
82
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
83 changeset: 1:8af4dc49db9e
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
84 user: test
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
85 date: Thu Jan 01 00:00:00 1970 +0000
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
86 summary: change in shared clone
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
87
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
88 changeset: 0:d3873e73d99e
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
89 user: test
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
90 date: Thu Jan 01 00:00:00 1970 +0000
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
91 summary: init
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
92
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
93 $ hg update
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
94 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
95 $ cat b # should exist with one "b"
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
96 b
9990
c1d940d31aea share: add a test script.
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
97
12487
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
98 hg serve shared clone
9990
c1d940d31aea share: add a test script.
Greg Ward <greg-hg@gerg.ca>
parents:
diff changeset
99
12487
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
100 $ hg serve -n test -p $HGPORT -d --pid-file=hg.pid
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
101 $ cat hg.pid >> $DAEMON_PIDS
25472
4d2b9b304ad0 tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents: 23614
diff changeset
102 $ get-with-headers.py localhost:$HGPORT 'raw-file/'
12487
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
103 200 Script output follows
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
104
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
105
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
106 -rw-r--r-- 4 a
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
107 -rw-r--r-- 2 b
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
108
9792013e2f53 tests: unify test-share
Matt Mackall <mpm@selenic.com>
parents: 10468
diff changeset
109
15080
574dc5d74f9b test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents: 12640
diff changeset
110
574dc5d74f9b test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents: 12640
diff changeset
111 test unshare command
574dc5d74f9b test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents: 12640
diff changeset
112
574dc5d74f9b test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents: 12640
diff changeset
113 $ hg unshare
574dc5d74f9b test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents: 12640
diff changeset
114 $ test -d .hg/store
574dc5d74f9b test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents: 12640
diff changeset
115 $ test -f .hg/sharedpath
574dc5d74f9b test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents: 12640
diff changeset
116 [1]
31221
ecbd378d9a7e share: fix typo to drop 'shared' requirement on unshare
Yuya Nishihara <yuya@tcha.org>
parents: 31148
diff changeset
117 $ grep shared .hg/requires
ecbd378d9a7e share: fix typo to drop 'shared' requirement on unshare
Yuya Nishihara <yuya@tcha.org>
parents: 31148
diff changeset
118 [1]
15080
574dc5d74f9b test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents: 12640
diff changeset
119 $ hg unshare
574dc5d74f9b test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents: 12640
diff changeset
120 abort: this is not a shared repo
574dc5d74f9b test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents: 12640
diff changeset
121 [255]
574dc5d74f9b test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents: 12640
diff changeset
122
574dc5d74f9b test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents: 12640
diff changeset
123 check that a change does not propagate
574dc5d74f9b test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents: 12640
diff changeset
124
574dc5d74f9b test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents: 12640
diff changeset
125 $ echo b >> b
574dc5d74f9b test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents: 12640
diff changeset
126 $ hg commit -m'change in unshared'
574dc5d74f9b test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents: 12640
diff changeset
127 $ cd ../repo1
574dc5d74f9b test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents: 12640
diff changeset
128 $ hg id -r tip
574dc5d74f9b test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents: 12640
diff changeset
129 c2e0ac586386 tip
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
130
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
131 $ cd ..
17539
bc7377160fa7 tests: enable more server tests on Windows
Patrick Mezard <patrick@mezard.eu>
parents: 17017
diff changeset
132
23548
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
133
23614
cd79fb4d75fd share: add option to share bookmarks
Ryan McElroy <rmcelroy@fb.com>
parents: 23548
diff changeset
134 test sharing bookmarks
23548
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
135
23614
cd79fb4d75fd share: add option to share bookmarks
Ryan McElroy <rmcelroy@fb.com>
parents: 23548
diff changeset
136 $ hg share -B repo1 repo3
23548
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
137 updating working directory
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
138 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
139 $ cd repo1
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
140 $ hg bookmark bm1
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
141 $ hg bookmarks
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
142 * bm1 2:c2e0ac586386
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
143 $ cd ../repo2
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
144 $ hg book bm2
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
145 $ hg bookmarks
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
146 * bm2 3:0e6e70d1d5f1
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
147 $ cd ../repo3
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
148 $ hg bookmarks
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
149 bm1 2:c2e0ac586386
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
150 $ hg book bm3
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
151 $ hg bookmarks
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
152 bm1 2:c2e0ac586386
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
153 * bm3 2:c2e0ac586386
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
154 $ cd ../repo1
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
155 $ hg bookmarks
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
156 * bm1 2:c2e0ac586386
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
157 bm3 2:c2e0ac586386
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
158
31072
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
159 check whether HG_PENDING makes pending changes only in relatd
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
160 repositories visible to an external hook.
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
161
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
162 In "hg share" case, another transaction can't run in other
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
163 repositories sharing same source repository, because starting
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
164 transaction requires locking store of source repository.
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
165
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
166 Therefore, this test scenario ignores checking visibility of
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
167 .hg/bookmakrs.pending in repo2, which shares repo1 without bookmarks.
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
168
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
169 $ cat > $TESTTMP/checkbookmarks.sh <<EOF
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
170 > echo "@repo1"
31770
6c800688afe1 tests: quote paths in shell script hooks
Matt Harbison <matt_harbison@yahoo.com>
parents: 31769
diff changeset
171 > hg -R "$TESTTMP/repo1" bookmarks
31072
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
172 > echo "@repo2"
31770
6c800688afe1 tests: quote paths in shell script hooks
Matt Harbison <matt_harbison@yahoo.com>
parents: 31769
diff changeset
173 > hg -R "$TESTTMP/repo2" bookmarks
31072
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
174 > echo "@repo3"
31770
6c800688afe1 tests: quote paths in shell script hooks
Matt Harbison <matt_harbison@yahoo.com>
parents: 31769
diff changeset
175 > hg -R "$TESTTMP/repo3" bookmarks
31072
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
176 > exit 1 # to avoid adding new bookmark for subsequent tests
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
177 > EOF
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
178
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
179 $ cd ../repo1
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
180 $ hg --config hooks.pretxnclose="sh $TESTTMP/checkbookmarks.sh" -q book bmX
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
181 @repo1
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
182 bm1 2:c2e0ac586386
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
183 bm3 2:c2e0ac586386
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
184 * bmX 2:c2e0ac586386
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
185 @repo2
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
186 * bm2 3:0e6e70d1d5f1
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
187 @repo3
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
188 bm1 2:c2e0ac586386
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
189 * bm3 2:c2e0ac586386
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
190 bmX 2:c2e0ac586386
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
191 transaction abort!
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
192 rollback completed
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
193 abort: pretxnclose hook exited with status 1
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
194 [255]
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
195 $ hg book bm1
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
196
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
197 FYI, in contrast to above test, bmX is invisible in repo1 (= shared
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
198 src), because (1) HG_PENDING refers only repo3 and (2)
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
199 "bookmarks.pending" is written only into repo3.
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
200
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
201 $ cd ../repo3
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
202 $ hg --config hooks.pretxnclose="sh $TESTTMP/checkbookmarks.sh" -q book bmX
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
203 @repo1
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
204 * bm1 2:c2e0ac586386
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
205 bm3 2:c2e0ac586386
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
206 @repo2
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
207 * bm2 3:0e6e70d1d5f1
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
208 @repo3
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
209 bm1 2:c2e0ac586386
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
210 bm3 2:c2e0ac586386
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
211 * bmX 2:c2e0ac586386
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
212 transaction abort!
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
213 rollback completed
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
214 abort: pretxnclose hook exited with status 1
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
215 [255]
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
216 $ hg book bm3
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
217
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
218 $ cd ../repo1
0332b8fafd05 bookmarks: check HG_PENDING strictly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25474
diff changeset
219
23548
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
220 test that commits work
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
221
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
222 $ echo 'shared bookmarks' > a
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
223 $ hg commit -m 'testing shared bookmarks'
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
224 $ hg bookmarks
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
225 * bm1 3:b87954705719
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
226 bm3 2:c2e0ac586386
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
227 $ cd ../repo3
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
228 $ hg bookmarks
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
229 bm1 3:b87954705719
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
230 * bm3 2:c2e0ac586386
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
231 $ echo 'more shared bookmarks' > a
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
232 $ hg commit -m 'testing shared bookmarks'
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
233 created new head
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
234 $ hg bookmarks
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
235 bm1 3:b87954705719
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
236 * bm3 4:62f4ded848e4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
237 $ cd ../repo1
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
238 $ hg bookmarks
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
239 * bm1 3:b87954705719
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
240 bm3 4:62f4ded848e4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
241 $ cd ..
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
242
31892
9e67ce5c4fd0 largefiles: set the extension as enabled locally after a share requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 31770
diff changeset
243 non largefiles repos won't enable largefiles
9e67ce5c4fd0 largefiles: set the extension as enabled locally after a share requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 31770
diff changeset
244
9e67ce5c4fd0 largefiles: set the extension as enabled locally after a share requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 31770
diff changeset
245 $ hg share --config extensions.largefiles= repo3 sharedrepo
33212
fe0667cc521e tests: add fsmonitor specific output lines at enabling largefiles
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 31892
diff changeset
246 The fsmonitor extension is incompatible with the largefiles extension and has been disabled. (fsmonitor !)
fe0667cc521e tests: add fsmonitor specific output lines at enabling largefiles
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 31892
diff changeset
247 The fsmonitor extension is incompatible with the largefiles extension and has been disabled. (fsmonitor !)
31892
9e67ce5c4fd0 largefiles: set the extension as enabled locally after a share requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 31770
diff changeset
248 updating working directory
9e67ce5c4fd0 largefiles: set the extension as enabled locally after a share requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 31770
diff changeset
249 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
9e67ce5c4fd0 largefiles: set the extension as enabled locally after a share requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 31770
diff changeset
250 $ [ -f sharedrepo/.hg/hgrc ]
9e67ce5c4fd0 largefiles: set the extension as enabled locally after a share requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 31770
diff changeset
251 [1]
9e67ce5c4fd0 largefiles: set the extension as enabled locally after a share requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 31770
diff changeset
252
23548
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
253 test pushing bookmarks works
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
254
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
255 $ hg clone repo3 repo4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
256 updating to branch default
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
257 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
258 $ cd repo4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
259 $ hg boo bm4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
260 $ echo foo > b
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
261 $ hg commit -m 'foo in b'
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
262 $ hg boo
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
263 bm1 3:b87954705719
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
264 bm3 4:62f4ded848e4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
265 * bm4 5:92793bfc8cad
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
266 $ hg push -B bm4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
267 pushing to $TESTTMP/repo3 (glob)
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
268 searching for changes
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
269 adding changesets
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
270 adding manifests
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
271 adding file changes
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
272 added 1 changesets with 1 changes to 1 files
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
273 exporting bookmark bm4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
274 $ cd ../repo1
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
275 $ hg bookmarks
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
276 * bm1 3:b87954705719
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
277 bm3 4:62f4ded848e4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
278 bm4 5:92793bfc8cad
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
279 $ cd ../repo3
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
280 $ hg bookmarks
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
281 bm1 3:b87954705719
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
282 * bm3 4:62f4ded848e4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
283 bm4 5:92793bfc8cad
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
284 $ cd ..
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
285
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
286 test behavior when sharing a shared repo
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
287
23614
cd79fb4d75fd share: add option to share bookmarks
Ryan McElroy <rmcelroy@fb.com>
parents: 23548
diff changeset
288 $ hg share -B repo3 repo5
23548
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
289 updating working directory
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
290 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
291 $ cd repo5
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
292 $ hg book
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
293 bm1 3:b87954705719
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
294 bm3 4:62f4ded848e4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
295 bm4 5:92793bfc8cad
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
296 $ cd ..
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
297
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
298 test what happens when an active bookmark is deleted
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
299
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
300 $ cd repo1
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
301 $ hg boo -d bm3
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
302 $ hg boo
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
303 * bm1 3:b87954705719
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
304 bm4 5:92793bfc8cad
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
305 $ cd ../repo3
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
306 $ hg boo
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
307 bm1 3:b87954705719
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
308 bm4 5:92793bfc8cad
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
309 $ cd ..
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
310
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
311 verify that bookmarks are not written on failed transaction
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
312
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
313 $ cat > failpullbookmarks.py << EOF
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
314 > """A small extension that makes bookmark pulls fail, for testing"""
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
315 > from mercurial import extensions, exchange, error
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
316 > def _pullbookmarks(orig, pullop):
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
317 > orig(pullop)
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
318 > raise error.HookAbort('forced failure by extension')
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
319 > def extsetup(ui):
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
320 > extensions.wrapfunction(exchange, '_pullbookmarks', _pullbookmarks)
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
321 > EOF
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
322 $ cd repo4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
323 $ hg boo
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
324 bm1 3:b87954705719
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
325 bm3 4:62f4ded848e4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
326 * bm4 5:92793bfc8cad
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
327 $ cd ../repo3
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
328 $ hg boo
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
329 bm1 3:b87954705719
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
330 bm4 5:92793bfc8cad
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
331 $ hg --config "extensions.failpullbookmarks=$TESTTMP/failpullbookmarks.py" pull $TESTTMP/repo4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
332 pulling from $TESTTMP/repo4 (glob)
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
333 searching for changes
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
334 no changes found
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
335 adding remote bookmark bm3
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
336 abort: forced failure by extension
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
337 [255]
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
338 $ hg boo
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
339 bm1 3:b87954705719
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
340 bm4 5:92793bfc8cad
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
341 $ hg pull $TESTTMP/repo4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
342 pulling from $TESTTMP/repo4 (glob)
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
343 searching for changes
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
344 no changes found
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
345 adding remote bookmark bm3
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
346 $ hg boo
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
347 bm1 3:b87954705719
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
348 * bm3 4:62f4ded848e4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
349 bm4 5:92793bfc8cad
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
350 $ cd ..
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
351
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
352 verify bookmark behavior after unshare
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
353
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
354 $ cd repo3
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
355 $ hg unshare
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
356 $ hg boo
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
357 bm1 3:b87954705719
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
358 * bm3 4:62f4ded848e4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
359 bm4 5:92793bfc8cad
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
360 $ hg boo -d bm4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
361 $ hg boo bm5
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
362 $ hg boo
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
363 bm1 3:b87954705719
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
364 bm3 4:62f4ded848e4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
365 * bm5 4:62f4ded848e4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
366 $ cd ../repo1
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
367 $ hg boo
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
368 * bm1 3:b87954705719
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
369 bm3 4:62f4ded848e4
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
370 bm4 5:92793bfc8cad
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
371 $ cd ..
141baca16059 share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents: 22046
diff changeset
372
31148
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
373 test shared clones using relative paths work
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
374
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
375 $ mkdir thisdir
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
376 $ hg init thisdir/orig
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
377 $ hg share -U thisdir/orig thisdir/abs
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
378 $ hg share -U --relative thisdir/abs thisdir/rel
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
379 $ cat thisdir/rel/.hg/sharedpath
31769
bdcaf612e75a tests: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 31222
diff changeset
380 ../../orig/.hg (no-eol) (glob)
31148
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
381 $ grep shared thisdir/*/.hg/requires
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
382 thisdir/abs/.hg/requires:shared
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
383 thisdir/rel/.hg/requires:shared
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
384 thisdir/rel/.hg/requires:relshared
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
385
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
386 test that relative shared paths aren't relative to $PWD
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
387
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
388 $ cd thisdir
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
389 $ hg -R rel root
31769
bdcaf612e75a tests: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 31222
diff changeset
390 $TESTTMP/thisdir/rel (glob)
31148
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
391 $ cd ..
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
392
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
393 now test that relative paths really are relative, survive across
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
394 renames and changes of PWD
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
395
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
396 $ hg -R thisdir/abs root
31769
bdcaf612e75a tests: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 31222
diff changeset
397 $TESTTMP/thisdir/abs (glob)
31148
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
398 $ hg -R thisdir/rel root
31769
bdcaf612e75a tests: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 31222
diff changeset
399 $TESTTMP/thisdir/rel (glob)
31148
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
400 $ mv thisdir thatdir
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
401 $ hg -R thatdir/abs root
31769
bdcaf612e75a tests: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 31222
diff changeset
402 abort: .hg/sharedpath points to nonexistent directory $TESTTMP/thisdir/orig/.hg! (glob)
31148
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
403 [255]
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
404 $ hg -R thatdir/rel root
31769
bdcaf612e75a tests: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 31222
diff changeset
405 $TESTTMP/thatdir/rel (glob)
31222
344121b30f32 share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents: 31221
diff changeset
406
344121b30f32 share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents: 31221
diff changeset
407 test unshare relshared repo
344121b30f32 share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents: 31221
diff changeset
408
344121b30f32 share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents: 31221
diff changeset
409 $ cd thatdir/rel
344121b30f32 share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents: 31221
diff changeset
410 $ hg unshare
344121b30f32 share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents: 31221
diff changeset
411 $ test -d .hg/store
344121b30f32 share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents: 31221
diff changeset
412 $ test -f .hg/sharedpath
344121b30f32 share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents: 31221
diff changeset
413 [1]
344121b30f32 share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents: 31221
diff changeset
414 $ grep shared .hg/requires
344121b30f32 share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents: 31221
diff changeset
415 [1]
344121b30f32 share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents: 31221
diff changeset
416 $ hg unshare
344121b30f32 share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents: 31221
diff changeset
417 abort: this is not a shared repo
344121b30f32 share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents: 31221
diff changeset
418 [255]
344121b30f32 share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents: 31221
diff changeset
419 $ cd ../..
344121b30f32 share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents: 31221
diff changeset
420
31148
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
421 $ rm -r thatdir
23080c03a604 share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 31072
diff changeset
422
17539
bc7377160fa7 tests: enable more server tests on Windows
Patrick Mezard <patrick@mezard.eu>
parents: 17017
diff changeset
423 Explicitly kill daemons to let the test exit on Windows
bc7377160fa7 tests: enable more server tests on Windows
Patrick Mezard <patrick@mezard.eu>
parents: 17017
diff changeset
424
25474
8c14f87bd0ae tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents: 25472
diff changeset
425 $ killdaemons.py
17539
bc7377160fa7 tests: enable more server tests on Windows
Patrick Mezard <patrick@mezard.eu>
parents: 17017
diff changeset
426