1#!/usr/bin/env cram
2
3  $ PATH=$TESTDIR/..:$PATH
4
5  $ n=0
6  $ create() {
7  >   echo $1 > $1
8  >   hg add $1
9  >   hg commit -m $1 -u nobody -d "$n 0" > /dev/null
10  >   n=$(expr $n + 1)
11  > }
12
13  $ hg init repo
14  $ REPO=$(pwd)/repo
15
16  $ git ls-remote hg::$REPO
17  $ git -c cinnabar.refs=tips ls-remote hg::$REPO
18  $ git -c cinnabar.refs=heads ls-remote hg::$REPO
19  $ git -c cinnabar.refs=bookmarks ls-remote hg::$REPO
20
21  $ cd repo
22  $ for f in a b; do create $f; done
23  $ hg update -r 0 > /dev/null
24  $ for f in c d; do create $f; done
25  $ hg update -r 2 > /dev/null
26  $ hg branch foo > /dev/null
27  $ for f in e f; do create $f; done
28  $ cd ..
29
30  $ git ls-remote hg::$REPO
31  0000000000000000000000000000000000000000	HEAD
32  0000000000000000000000000000000000000000	refs/heads/branches/default/636e60525868096cbdc961870493510558f41d2f
33  0000000000000000000000000000000000000000	refs/heads/branches/default/tip
34  0000000000000000000000000000000000000000	refs/heads/branches/foo/tip
35
36  $ git -c cinnabar.refs=tips ls-remote hg::$REPO
37  0000000000000000000000000000000000000000	HEAD
38  0000000000000000000000000000000000000000	refs/heads/default
39  0000000000000000000000000000000000000000	refs/heads/foo
40
41  $ git -c cinnabar.refs=heads ls-remote hg::$REPO
42  0000000000000000000000000000000000000000	HEAD
43  0000000000000000000000000000000000000000	refs/heads/default/636e60525868096cbdc961870493510558f41d2f
44  0000000000000000000000000000000000000000	refs/heads/default/7937e1a594596ae25c637d317503d775767671b5
45  0000000000000000000000000000000000000000	refs/heads/foo/312a5a9c675e3ce302a33bd4605205a6be36d561
46
47  $ git -c cinnabar.refs=bookmarks ls-remote hg::$REPO
48
49  $ git -c cinnabar.refs=bookmarks,tips ls-remote hg::$REPO
50  0000000000000000000000000000000000000000	HEAD
51  0000000000000000000000000000000000000000	refs/heads/branches/default
52  0000000000000000000000000000000000000000	refs/heads/branches/foo
53
54  $ git -c cinnabar.refs=bookmarks,heads ls-remote hg::$REPO
55  0000000000000000000000000000000000000000	HEAD
56  0000000000000000000000000000000000000000	refs/heads/branches/default/636e60525868096cbdc961870493510558f41d2f
57  0000000000000000000000000000000000000000	refs/heads/branches/default/7937e1a594596ae25c637d317503d775767671b5
58  0000000000000000000000000000000000000000	refs/heads/branches/foo/312a5a9c675e3ce302a33bd4605205a6be36d561
59
60  $ git -c cinnabar.refs=bookmarks,heads,tips ls-remote hg::$REPO
61  0000000000000000000000000000000000000000	HEAD
62  0000000000000000000000000000000000000000	refs/heads/branches/default/636e60525868096cbdc961870493510558f41d2f
63  0000000000000000000000000000000000000000	refs/heads/branches/default/tip
64  0000000000000000000000000000000000000000	refs/heads/branches/foo/tip
65
66  $ git clone -q hg::$REPO repo-git
67  It is recommended that you set "remote.origin.prune" or "fetch.prune" to "true".
68    git config remote.origin.prune true
69  or
70    git config fetch.prune true
71
72  $ git -C repo-git ls-remote hg::$REPO
73  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	HEAD
74  d04f6df4abe2870ceb759263ee6aaa9241c4f93c	refs/heads/branches/default/636e60525868096cbdc961870493510558f41d2f
75  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default/tip
76  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo/tip
77
78  $ git -c cinnabar.refs=tips -C repo-git ls-remote hg::$REPO
79  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	HEAD
80  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/default
81  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/foo
82
83  $ git -c cinnabar.refs=heads -C repo-git ls-remote hg::$REPO
84  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	HEAD
85  d04f6df4abe2870ceb759263ee6aaa9241c4f93c	refs/heads/default/636e60525868096cbdc961870493510558f41d2f
86  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/default/7937e1a594596ae25c637d317503d775767671b5
87  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/foo/312a5a9c675e3ce302a33bd4605205a6be36d561
88
89  $ git -c cinnabar.refs=bookmarks -C repo-git ls-remote hg::$REPO
90
91  $ git -c cinnabar.refs=bookmarks,tips -C repo-git ls-remote hg::$REPO
92  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	HEAD
93  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default
94  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo
95
96  $ git -c cinnabar.refs=bookmarks,heads -C repo-git ls-remote hg::$REPO
97  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	HEAD
98  d04f6df4abe2870ceb759263ee6aaa9241c4f93c	refs/heads/branches/default/636e60525868096cbdc961870493510558f41d2f
99  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default/7937e1a594596ae25c637d317503d775767671b5
100  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo/312a5a9c675e3ce302a33bd4605205a6be36d561
101
102  $ git -c cinnabar.refs=bookmarks,heads,tips -C repo-git ls-remote hg::$REPO
103  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	HEAD
104  d04f6df4abe2870ceb759263ee6aaa9241c4f93c	refs/heads/branches/default/636e60525868096cbdc961870493510558f41d2f
105  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default/tip
106  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo/tip
107
108  $ cd repo
109  $ hg bookmark bar -r 1
110  $ hg bookmark qux -r 2
111  $ hg bookmark fooz -r 5
112  $ cd ..
113
114  $ git ls-remote hg::$REPO
115  0000000000000000000000000000000000000000	HEAD
116  0000000000000000000000000000000000000000	refs/heads/bookmarks/bar
117  0000000000000000000000000000000000000000	refs/heads/bookmarks/fooz
118  0000000000000000000000000000000000000000	refs/heads/bookmarks/qux
119  0000000000000000000000000000000000000000	refs/heads/branches/default/636e60525868096cbdc961870493510558f41d2f
120  0000000000000000000000000000000000000000	refs/heads/branches/default/tip
121  0000000000000000000000000000000000000000	refs/heads/branches/foo/tip
122
123  $ git -c cinnabar.refs=tips ls-remote hg::$REPO
124  0000000000000000000000000000000000000000	HEAD
125  0000000000000000000000000000000000000000	refs/heads/default
126  0000000000000000000000000000000000000000	refs/heads/foo
127
128  $ git -c cinnabar.refs=heads ls-remote hg::$REPO
129  0000000000000000000000000000000000000000	HEAD
130  0000000000000000000000000000000000000000	refs/heads/default/636e60525868096cbdc961870493510558f41d2f
131  0000000000000000000000000000000000000000	refs/heads/default/7937e1a594596ae25c637d317503d775767671b5
132  0000000000000000000000000000000000000000	refs/heads/foo/312a5a9c675e3ce302a33bd4605205a6be36d561
133
134  $ git -c cinnabar.refs=bookmarks ls-remote hg::$REPO
135  0000000000000000000000000000000000000000	refs/heads/bar
136  0000000000000000000000000000000000000000	refs/heads/fooz
137  0000000000000000000000000000000000000000	refs/heads/qux
138
139  $ git -c cinnabar.refs=bookmarks,tips ls-remote hg::$REPO
140  0000000000000000000000000000000000000000	HEAD
141  0000000000000000000000000000000000000000	refs/heads/bookmarks/bar
142  0000000000000000000000000000000000000000	refs/heads/bookmarks/fooz
143  0000000000000000000000000000000000000000	refs/heads/bookmarks/qux
144  0000000000000000000000000000000000000000	refs/heads/branches/default
145  0000000000000000000000000000000000000000	refs/heads/branches/foo
146
147  $ git -c cinnabar.refs=bookmarks,heads ls-remote hg::$REPO
148  0000000000000000000000000000000000000000	HEAD
149  0000000000000000000000000000000000000000	refs/heads/bookmarks/bar
150  0000000000000000000000000000000000000000	refs/heads/bookmarks/fooz
151  0000000000000000000000000000000000000000	refs/heads/bookmarks/qux
152  0000000000000000000000000000000000000000	refs/heads/branches/default/636e60525868096cbdc961870493510558f41d2f
153  0000000000000000000000000000000000000000	refs/heads/branches/default/7937e1a594596ae25c637d317503d775767671b5
154  0000000000000000000000000000000000000000	refs/heads/branches/foo/312a5a9c675e3ce302a33bd4605205a6be36d561
155
156  $ git -c cinnabar.refs=bookmarks,heads,tips ls-remote hg::$REPO
157  0000000000000000000000000000000000000000	HEAD
158  0000000000000000000000000000000000000000	refs/heads/bookmarks/bar
159  0000000000000000000000000000000000000000	refs/heads/bookmarks/fooz
160  0000000000000000000000000000000000000000	refs/heads/bookmarks/qux
161  0000000000000000000000000000000000000000	refs/heads/branches/default/636e60525868096cbdc961870493510558f41d2f
162  0000000000000000000000000000000000000000	refs/heads/branches/default/tip
163  0000000000000000000000000000000000000000	refs/heads/branches/foo/tip
164
165  $ git -C repo-git ls-remote hg::$REPO
166  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	HEAD
167  d04f6df4abe2870ceb759263ee6aaa9241c4f93c	refs/heads/bookmarks/bar
168  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/bookmarks/fooz
169  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/bookmarks/qux
170  d04f6df4abe2870ceb759263ee6aaa9241c4f93c	refs/heads/branches/default/636e60525868096cbdc961870493510558f41d2f
171  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default/tip
172  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo/tip
173
174  $ git -c cinnabar.refs=tips -C repo-git ls-remote hg::$REPO
175  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	HEAD
176  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/default
177  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/foo
178
179  $ git -c cinnabar.refs=heads -C repo-git ls-remote hg::$REPO
180  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	HEAD
181  d04f6df4abe2870ceb759263ee6aaa9241c4f93c	refs/heads/default/636e60525868096cbdc961870493510558f41d2f
182  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/default/7937e1a594596ae25c637d317503d775767671b5
183  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/foo/312a5a9c675e3ce302a33bd4605205a6be36d561
184
185  $ git -c cinnabar.refs=bookmarks -C repo-git ls-remote hg::$REPO
186  d04f6df4abe2870ceb759263ee6aaa9241c4f93c	refs/heads/bar
187  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/fooz
188  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/qux
189
190  $ git -c cinnabar.refs=bookmarks,tips -C repo-git ls-remote hg::$REPO
191  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	HEAD
192  d04f6df4abe2870ceb759263ee6aaa9241c4f93c	refs/heads/bookmarks/bar
193  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/bookmarks/fooz
194  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/bookmarks/qux
195  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default
196  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo
197
198  $ git -c cinnabar.refs=bookmarks,heads -C repo-git ls-remote hg::$REPO
199  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	HEAD
200  d04f6df4abe2870ceb759263ee6aaa9241c4f93c	refs/heads/bookmarks/bar
201  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/bookmarks/fooz
202  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/bookmarks/qux
203  d04f6df4abe2870ceb759263ee6aaa9241c4f93c	refs/heads/branches/default/636e60525868096cbdc961870493510558f41d2f
204  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default/7937e1a594596ae25c637d317503d775767671b5
205  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo/312a5a9c675e3ce302a33bd4605205a6be36d561
206
207  $ git -c cinnabar.refs=bookmarks,heads,tips -C repo-git ls-remote hg::$REPO
208  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	HEAD
209  d04f6df4abe2870ceb759263ee6aaa9241c4f93c	refs/heads/bookmarks/bar
210  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/bookmarks/fooz
211  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/bookmarks/qux
212  d04f6df4abe2870ceb759263ee6aaa9241c4f93c	refs/heads/branches/default/636e60525868096cbdc961870493510558f41d2f
213  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default/tip
214  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo/tip
215
216  $ cd repo
217  $ hg update -r 1 > /dev/null
218  $ for f in g h; do create $f; done
219  $ cd ..
220
221  $ git -C repo-git ls-remote hg::$REPO
222  0000000000000000000000000000000000000000	HEAD
223  d04f6df4abe2870ceb759263ee6aaa9241c4f93c	refs/heads/bookmarks/bar
224  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/bookmarks/fooz
225  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/bookmarks/qux
226  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default/7937e1a594596ae25c637d317503d775767671b5
227  0000000000000000000000000000000000000000	refs/heads/branches/default/tip
228  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo/tip
229
230  $ git -c cinnabar.refs=tips -C repo-git ls-remote hg::$REPO
231  0000000000000000000000000000000000000000	HEAD
232  0000000000000000000000000000000000000000	refs/heads/default
233  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/foo
234
235  $ git -c cinnabar.refs=heads -C repo-git ls-remote hg::$REPO
236  0000000000000000000000000000000000000000	HEAD
237  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/default/7937e1a594596ae25c637d317503d775767671b5
238  0000000000000000000000000000000000000000	refs/heads/default/8bb4ccecc30b8db9a6f524f40be0d4c2dbc78a07
239  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/foo/312a5a9c675e3ce302a33bd4605205a6be36d561
240
241  $ git -c cinnabar.refs=bookmarks -C repo-git ls-remote hg::$REPO
242  d04f6df4abe2870ceb759263ee6aaa9241c4f93c	refs/heads/bar
243  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/fooz
244  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/qux
245
246  $ git -c cinnabar.refs=bookmarks,tips -C repo-git ls-remote hg::$REPO
247  0000000000000000000000000000000000000000	HEAD
248  d04f6df4abe2870ceb759263ee6aaa9241c4f93c	refs/heads/bookmarks/bar
249  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/bookmarks/fooz
250  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/bookmarks/qux
251  0000000000000000000000000000000000000000	refs/heads/branches/default
252  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo
253
254  $ git -c cinnabar.refs=bookmarks,heads -C repo-git ls-remote hg::$REPO
255  0000000000000000000000000000000000000000	HEAD
256  d04f6df4abe2870ceb759263ee6aaa9241c4f93c	refs/heads/bookmarks/bar
257  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/bookmarks/fooz
258  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/bookmarks/qux
259  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default/7937e1a594596ae25c637d317503d775767671b5
260  0000000000000000000000000000000000000000	refs/heads/branches/default/8bb4ccecc30b8db9a6f524f40be0d4c2dbc78a07
261  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo/312a5a9c675e3ce302a33bd4605205a6be36d561
262
263  $ git -c cinnabar.refs=bookmarks,heads,tips -C repo-git ls-remote hg::$REPO
264  0000000000000000000000000000000000000000	HEAD
265  d04f6df4abe2870ceb759263ee6aaa9241c4f93c	refs/heads/bookmarks/bar
266  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/bookmarks/fooz
267  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/bookmarks/qux
268  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default/7937e1a594596ae25c637d317503d775767671b5
269  0000000000000000000000000000000000000000	refs/heads/branches/default/tip
270  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo/tip
271
272  $ hg -R repo bookmark bar -f -r 7 > /dev/null
273
274  $ git -C repo-git ls-remote hg::$REPO
275  0000000000000000000000000000000000000000	HEAD
276  0000000000000000000000000000000000000000	refs/heads/bookmarks/bar
277  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/bookmarks/fooz
278  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/bookmarks/qux
279  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default/7937e1a594596ae25c637d317503d775767671b5
280  0000000000000000000000000000000000000000	refs/heads/branches/default/tip
281  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo/tip
282
283  $ git -c cinnabar.refs=tips -C repo-git ls-remote hg::$REPO
284  0000000000000000000000000000000000000000	HEAD
285  0000000000000000000000000000000000000000	refs/heads/default
286  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/foo
287
288  $ git -c cinnabar.refs=heads -C repo-git ls-remote hg::$REPO
289  0000000000000000000000000000000000000000	HEAD
290  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/default/7937e1a594596ae25c637d317503d775767671b5
291  0000000000000000000000000000000000000000	refs/heads/default/8bb4ccecc30b8db9a6f524f40be0d4c2dbc78a07
292  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/foo/312a5a9c675e3ce302a33bd4605205a6be36d561
293
294  $ git -c cinnabar.refs=bookmarks -C repo-git ls-remote hg::$REPO
295  0000000000000000000000000000000000000000	refs/heads/bar
296  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/fooz
297  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/qux
298
299  $ git -c cinnabar.refs=bookmarks,tips -C repo-git ls-remote hg::$REPO
300  0000000000000000000000000000000000000000	HEAD
301  0000000000000000000000000000000000000000	refs/heads/bookmarks/bar
302  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/bookmarks/fooz
303  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/bookmarks/qux
304  0000000000000000000000000000000000000000	refs/heads/branches/default
305  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo
306
307  $ git -c cinnabar.refs=bookmarks,heads -C repo-git ls-remote hg::$REPO
308  0000000000000000000000000000000000000000	HEAD
309  0000000000000000000000000000000000000000	refs/heads/bookmarks/bar
310  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/bookmarks/fooz
311  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/bookmarks/qux
312  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default/7937e1a594596ae25c637d317503d775767671b5
313  0000000000000000000000000000000000000000	refs/heads/branches/default/8bb4ccecc30b8db9a6f524f40be0d4c2dbc78a07
314  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo/312a5a9c675e3ce302a33bd4605205a6be36d561
315
316  $ git -c cinnabar.refs=bookmarks,heads,tips -C repo-git ls-remote hg::$REPO
317  0000000000000000000000000000000000000000	HEAD
318  0000000000000000000000000000000000000000	refs/heads/bookmarks/bar
319  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/bookmarks/fooz
320  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/bookmarks/qux
321  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default/7937e1a594596ae25c637d317503d775767671b5
322  0000000000000000000000000000000000000000	refs/heads/branches/default/tip
323  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo/tip
324
325  $ git -c fetch.prune=true -C repo-git remote update
326  Fetching origin
327  From hg::.*/ls-remote.t/repo (re)
328   - [deleted]         (none)     -> origin/branches/default/636e60525868096cbdc961870493510558f41d2f
329   + 5c5b259...445bd26 branches/default/tip -> origin/branches/default/tip  (forced update)
330   * [new branch]      bookmarks/bar        -> origin/bookmarks/bar
331   * [new branch]      bookmarks/fooz       -> origin/bookmarks/fooz
332   * [new branch]      bookmarks/qux        -> origin/bookmarks/qux
333   * [new branch]      branches/default/7937e1a594596ae25c637d317503d775767671b5 -> origin/branches/default/7937e1a594596ae25c637d317503d775767671b5
334
335  $ git -C repo-git ls-remote hg::$REPO
336  445bd26f53d0d2b946eda781eae0e11cf665493d	HEAD
337  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/bookmarks/bar
338  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/bookmarks/fooz
339  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/bookmarks/qux
340  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default/7937e1a594596ae25c637d317503d775767671b5
341  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/branches/default/tip
342  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo/tip
343
344  $ git -c cinnabar.refs=tips -C repo-git ls-remote hg::$REPO
345  445bd26f53d0d2b946eda781eae0e11cf665493d	HEAD
346  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/default
347  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/foo
348
349  $ git -c cinnabar.refs=heads -C repo-git ls-remote hg::$REPO
350  445bd26f53d0d2b946eda781eae0e11cf665493d	HEAD
351  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/default/7937e1a594596ae25c637d317503d775767671b5
352  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/default/8bb4ccecc30b8db9a6f524f40be0d4c2dbc78a07
353  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/foo/312a5a9c675e3ce302a33bd4605205a6be36d561
354
355  $ git -c cinnabar.refs=bookmarks -C repo-git ls-remote hg::$REPO
356  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/bar
357  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/fooz
358  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/qux
359
360  $ git -c cinnabar.refs=bookmarks,tips -C repo-git ls-remote hg::$REPO
361  445bd26f53d0d2b946eda781eae0e11cf665493d	HEAD
362  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/bookmarks/bar
363  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/bookmarks/fooz
364  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/bookmarks/qux
365  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/branches/default
366  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo
367
368  $ git -c cinnabar.refs=bookmarks,heads -C repo-git ls-remote hg::$REPO
369  445bd26f53d0d2b946eda781eae0e11cf665493d	HEAD
370  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/bookmarks/bar
371  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/bookmarks/fooz
372  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/bookmarks/qux
373  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default/7937e1a594596ae25c637d317503d775767671b5
374  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/branches/default/8bb4ccecc30b8db9a6f524f40be0d4c2dbc78a07
375  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo/312a5a9c675e3ce302a33bd4605205a6be36d561
376
377  $ git -c cinnabar.refs=bookmarks,heads,tips -C repo-git ls-remote hg::$REPO
378  445bd26f53d0d2b946eda781eae0e11cf665493d	HEAD
379  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/bookmarks/bar
380  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/bookmarks/fooz
381  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/bookmarks/qux
382  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default/7937e1a594596ae25c637d317503d775767671b5
383  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/branches/default/tip
384  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo/tip
385
386  $ hg -R repo bookmark @ -r 3
387
388  $ git -C repo-git ls-remote hg::$REPO
389  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	HEAD
390  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/bookmarks/@
391  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/bookmarks/bar
392  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/bookmarks/fooz
393  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/bookmarks/qux
394  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default/7937e1a594596ae25c637d317503d775767671b5
395  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/branches/default/tip
396  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo/tip
397
398  $ git -c cinnabar.refs=tips -C repo-git ls-remote hg::$REPO
399  445bd26f53d0d2b946eda781eae0e11cf665493d	HEAD
400  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/default
401  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/foo
402
403  $ git -c cinnabar.refs=heads -C repo-git ls-remote hg::$REPO
404  445bd26f53d0d2b946eda781eae0e11cf665493d	HEAD
405  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/default/7937e1a594596ae25c637d317503d775767671b5
406  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/default/8bb4ccecc30b8db9a6f524f40be0d4c2dbc78a07
407  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/foo/312a5a9c675e3ce302a33bd4605205a6be36d561
408
409  $ git -c cinnabar.refs=bookmarks -C repo-git ls-remote hg::$REPO
410  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	HEAD
411  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/@
412  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/bar
413  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/fooz
414  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/qux
415
416  $ git -c cinnabar.refs=bookmarks,tips -C repo-git ls-remote hg::$REPO
417  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	HEAD
418  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/bookmarks/@
419  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/bookmarks/bar
420  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/bookmarks/fooz
421  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/bookmarks/qux
422  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/branches/default
423  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo
424
425  $ git -c cinnabar.refs=bookmarks,heads -C repo-git ls-remote hg::$REPO
426  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	HEAD
427  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/bookmarks/@
428  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/bookmarks/bar
429  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/bookmarks/fooz
430  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/bookmarks/qux
431  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default/7937e1a594596ae25c637d317503d775767671b5
432  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/branches/default/8bb4ccecc30b8db9a6f524f40be0d4c2dbc78a07
433  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo/312a5a9c675e3ce302a33bd4605205a6be36d561
434
435  $ git -c cinnabar.refs=bookmarks,heads,tips -C repo-git ls-remote hg::$REPO
436  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	HEAD
437  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/bookmarks/@
438  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/bookmarks/bar
439  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/bookmarks/fooz
440  7688446e0a5d5b6108443632be74c9bca72d31b1	refs/heads/bookmarks/qux
441  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default/7937e1a594596ae25c637d317503d775767671b5
442  445bd26f53d0d2b946eda781eae0e11cf665493d	refs/heads/branches/default/tip
443  23bcc26b9fea7e37426260465bed35eac54af5e1	refs/heads/branches/foo/tip
444
445  $ cd repo
446  $ hg update -r foo > /dev/null
447  $ hg commit --close-branch -m close -u nobody -d "$n 0" > /dev/null
448  $ hg update -r default > /dev/null
449  $ hg commit --close-branch -m close -u nobody -d "$n 0" > /dev/null
450  $ cd ..
451
452  $ git -c fetch.prune=true -C repo-git remote update
453  Fetching origin
454  From hg::.*/ls-remote.t/repo (re)
455     445bd26..66e3a05  branches/default/tip -> origin/branches/default/tip
456   * [new branch]      bookmarks/@          -> origin/bookmarks/@
457     23bcc26..98c3f74  branches/foo/tip     -> origin/branches/foo/tip
458
459  $ git -c cinnabar.refs=heads,tips -C repo-git ls-remote hg::$REPO
460  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	HEAD
461  66e3a05b3f4cc64ecdd41a4a2c4ac3913ca905bd	refs/heads/branches/default/3af330d6b3b174311a550ed9246a104ceeda8c28
462  5c5b259d3c128f3d7b50ce3bd5c9eaafd8d17611	refs/heads/branches/default/tip
463  98c3f7495c17d6fcae8cfaa894c8af0da9668863	refs/heads/branches/foo/tip
464