Show More
@@ -0,0 +1,67 b'' | |||
|
1 | #require no-windows | |
|
2 | ||
|
3 | $ . "$TESTDIR/remotefilelog-library.sh" | |
|
4 | ||
|
5 | $ hg init master | |
|
6 | $ cd master | |
|
7 | $ cat >> .hg/hgrc <<EOF | |
|
8 | > [remotefilelog] | |
|
9 | > server=True | |
|
10 | > EOF | |
|
11 | $ echo x > x | |
|
12 | $ hg commit -qAm x | |
|
13 | ||
|
14 | $ cd .. | |
|
15 | ||
|
16 | $ hgcloneshallow ssh://user@dummy/master shallow -q | |
|
17 | 1 files fetched over 1 fetches - (1 misses, 0.00% hit ratio) over *s (glob) | |
|
18 | $ cd shallow | |
|
19 | ||
|
20 | $ cat >> $TESTTMP/get_file_linknode.py <<EOF | |
|
21 | > from mercurial import node, registrar, scmutil | |
|
22 | > cmdtable = {} | |
|
23 | > command = registrar.command(cmdtable) | |
|
24 | > @command(b'debug-file-linknode', [(b'r', b'rev', b'.', b'rev')], b'hg debug-file-linknode FILE') | |
|
25 | > def debug_file_linknode(ui, repo, file, **opts): | |
|
26 | > rflctx = scmutil.revsingle(repo.unfiltered(), opts['rev']).filectx(file) | |
|
27 | > ui.status(b'%s\n' % node.hex(rflctx.ancestormap()[rflctx._filenode][2])) | |
|
28 | > EOF | |
|
29 | ||
|
30 | $ cat >> .hg/hgrc <<EOF | |
|
31 | > [ui] | |
|
32 | > interactive=1 | |
|
33 | > [extensions] | |
|
34 | > strip= | |
|
35 | > get_file_linknode=$TESTTMP/get_file_linknode.py | |
|
36 | > [experimental] | |
|
37 | > evolution=createmarkers,allowunstable | |
|
38 | > EOF | |
|
39 | $ echo a > a | |
|
40 | $ hg commit -qAm msg1 | |
|
41 | $ hg commit --amend 're:^$' -m msg2 | |
|
42 | $ hg commit --amend 're:^$' -m msg3 | |
|
43 | $ hg --hidden log -G -T '{rev} {node|short}' | |
|
44 | @ 3 df91f74b871e | |
|
45 | | | |
|
46 | | x 2 70494d7ec5ef | |
|
47 | |/ | |
|
48 | | x 1 1e423846dde0 | |
|
49 | |/ | |
|
50 | o 0 b292c1e3311f | |
|
51 | ||
|
52 | $ hg debug-file-linknode -r 70494d a | |
|
53 | df91f74b871e064c89afa1fe9e2f66afa2c125df | |
|
54 | $ hg --hidden strip -r 1 3 | |
|
55 | 0 files updated, 0 files merged, 1 files removed, 0 files unresolved | |
|
56 | saved backup bundle to $TESTTMP/shallow/.hg/strip-backup/df91f74b871e-c94d67be-backup.hg | |
|
57 | ||
|
58 | $ hg --hidden log -G -T '{rev} {node|short}' | |
|
59 | o 1 70494d7ec5ef | |
|
60 | | | |
|
61 | @ 0 b292c1e3311f | |
|
62 | ||
|
63 | FIXME: This should point to a commit that actually exists in the repo. Otherwise | |
|
64 | remotefilelog has to search every commit in the repository looking for a valid | |
|
65 | linkrev every time it's queried, such as during push. | |
|
66 | $ hg debug-file-linknode -r 70494d a | |
|
67 | df91f74b871e064c89afa1fe9e2f66afa2c125df |
General Comments 0
You need to be logged in to leave comments.
Login now