Mercurial > hg
annotate hgext/hgk.py @ 8894:868670dbc237
extensions: improve the consistency of synopses
Trying as much as possible to consistently:
- use a present tense predicate followed by a direct object
- verb referring directly to the functionality provided
(ie. not "add command that does this" but simple "do that")
- keep simple and to the point, leaving details for the long help
(width is tight, possibly even more so for translations)
Thanks to timeless, Martin Geisler, Rafael Villar Burke, Dan Villiom
Podlaski Christiansen and others for the helpful suggestions.
author | Cédric Duval <cedricduval@free.fr> |
---|---|
date | Mon, 22 Jun 2009 15:48:08 +0200 |
parents | 87c30fb7e8df |
children | 576623f95972 |
rev | line source |
---|---|
267 | 1 # Minimal support for git commands on an hg repository |
2 # | |
2859 | 3 # Copyright 2005, 2006 Chris Mason <mason@suse.com> |
267 | 4 # |
8225
46293a0c7e9f
updated license to be explicit about GPL version 2
Martin Geisler <mg@lazybytes.net>
parents:
7992
diff
changeset
|
5 # This software may be used and distributed according to the terms of the |
46293a0c7e9f
updated license to be explicit about GPL version 2
Martin Geisler <mg@lazybytes.net>
parents:
7992
diff
changeset
|
6 # GNU General Public License version 2, incorporated herein by reference. |
8228
eee2319c5895
add blank line after copyright notices and after header
Martin Geisler <mg@lazybytes.net>
parents:
8225
diff
changeset
|
7 |
8894
868670dbc237
extensions: improve the consistency of synopses
Cédric Duval <cedricduval@free.fr>
parents:
8866
diff
changeset
|
8 '''browse the repository in a graphical way |
6666
53465a7464e2
convert comments to docstrings in a bunch of extensions
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6616
diff
changeset
|
9 |
53465a7464e2
convert comments to docstrings in a bunch of extensions
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6616
diff
changeset
|
10 The hgk extension allows browsing the history of a repository in a |
7992
0e7f02eaa63b
hgk: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7598
diff
changeset
|
11 graphical way. It requires Tcl/Tk version 8.4 or later. (Tcl/Tk is not |
0e7f02eaa63b
hgk: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7598
diff
changeset
|
12 distributed with Mercurial.) |
6666
53465a7464e2
convert comments to docstrings in a bunch of extensions
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6616
diff
changeset
|
13 |
53465a7464e2
convert comments to docstrings in a bunch of extensions
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6616
diff
changeset
|
14 hgk consists of two parts: a Tcl script that does the displaying and |
8760
bf17aeafb869
Spell Mercurial as a proper noun
timeless <timeless@gmail.com>
parents:
8632
diff
changeset
|
15 querying of information, and an extension to Mercurial named hgk.py, |
6666
53465a7464e2
convert comments to docstrings in a bunch of extensions
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6616
diff
changeset
|
16 which provides hooks for hgk to get information. hgk can be found in |
8866
87c30fb7e8df
help: remove per-extension paragraph on how to enable it
Cédric Duval <cedricduval@free.fr>
parents:
8760
diff
changeset
|
17 the contrib directory, and the extension is shipped in the hgext |
87c30fb7e8df
help: remove per-extension paragraph on how to enable it
Cédric Duval <cedricduval@free.fr>
parents:
8760
diff
changeset
|
18 repository, and needs to be enabled. |
6666
53465a7464e2
convert comments to docstrings in a bunch of extensions
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6616
diff
changeset
|
19 |
53465a7464e2
convert comments to docstrings in a bunch of extensions
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6616
diff
changeset
|
20 The hg view command will launch the hgk Tcl script. For this command |
7992
0e7f02eaa63b
hgk: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7598
diff
changeset
|
21 to work, hgk must be in your search path. Alternately, you can specify |
0e7f02eaa63b
hgk: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents:
7598
diff
changeset
|
22 the path to hgk in your .hgrc file: |
6666
53465a7464e2
convert comments to docstrings in a bunch of extensions
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6616
diff
changeset
|
23 |
53465a7464e2
convert comments to docstrings in a bunch of extensions
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6616
diff
changeset
|
24 [hgk] |
53465a7464e2
convert comments to docstrings in a bunch of extensions
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6616
diff
changeset
|
25 path=/location/of/hgk |
53465a7464e2
convert comments to docstrings in a bunch of extensions
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6616
diff
changeset
|
26 |
53465a7464e2
convert comments to docstrings in a bunch of extensions
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6616
diff
changeset
|
27 hgk can make use of the extdiff extension to visualize revisions. |
53465a7464e2
convert comments to docstrings in a bunch of extensions
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6616
diff
changeset
|
28 Assuming you had already configured extdiff vdiff command, just add: |
53465a7464e2
convert comments to docstrings in a bunch of extensions
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6616
diff
changeset
|
29 |
53465a7464e2
convert comments to docstrings in a bunch of extensions
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6616
diff
changeset
|
30 [hgk] |
53465a7464e2
convert comments to docstrings in a bunch of extensions
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6616
diff
changeset
|
31 vdiff=vdiff |
53465a7464e2
convert comments to docstrings in a bunch of extensions
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6616
diff
changeset
|
32 |
53465a7464e2
convert comments to docstrings in a bunch of extensions
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6616
diff
changeset
|
33 Revisions context menu will now display additional entries to fire |
53465a7464e2
convert comments to docstrings in a bunch of extensions
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6616
diff
changeset
|
34 vdiff on hovered and selected revisions.''' |
267 | 35 |
5878
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
36 import os |
6599
cd4db3999ef9
status: use match helpers for various users
Matt Mackall <mpm@selenic.com>
parents:
6217
diff
changeset
|
37 from mercurial import commands, util, patch, revlog, cmdutil |
6217
fe8dbbe9520d
Avoid importing mercurial.node/mercurial.repo stuff from mercurial.hg
Joel Rosdahl <joel@rosdahl.net>
parents:
6212
diff
changeset
|
38 from mercurial.node import nullid, nullrev, short |
6958
e01ed40a31a2
i18n: mark strings for translation in hgk extension
Martin Geisler <mg@daimi.au.dk>
parents:
6812
diff
changeset
|
39 from mercurial.i18n import _ |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
40 |
3063
aa1cee5b8afb
hgk.py: add an optional file list to debug-diff-tree
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
3059
diff
changeset
|
41 def difftree(ui, repo, node1=None, node2=None, *files, **opts): |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
42 """diff trees from two commits""" |
3063
aa1cee5b8afb
hgk.py: add an optional file list to debug-diff-tree
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
3059
diff
changeset
|
43 def __difftree(repo, node1, node2, files=[]): |
3978
ee5663cb4406
hgk: remove unused code, node2 is always set
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
3963
diff
changeset
|
44 assert node2 is not None |
6747
f6c00b17387c
use repo[changeid] to get a changectx
Matt Mackall <mpm@selenic.com>
parents:
6666
diff
changeset
|
45 mmap = repo[node1].manifest() |
f6c00b17387c
use repo[changeid] to get a changectx
Matt Mackall <mpm@selenic.com>
parents:
6666
diff
changeset
|
46 mmap2 = repo[node2].manifest() |
6616
e9dfe4e3ee6f
hgk: difftree must match all files when supplied list is empty
Patrick Mezard <pmezard@gmail.com>
parents:
6603
diff
changeset
|
47 m = cmdutil.match(repo, files) |
6760
4faaa0535ea7
status: clean up all users for unknown files
Matt Mackall <mpm@selenic.com>
parents:
6750
diff
changeset
|
48 modified, added, removed = repo.status(node1, node2, m)[:3] |
6217
fe8dbbe9520d
Avoid importing mercurial.node/mercurial.repo stuff from mercurial.hg
Joel Rosdahl <joel@rosdahl.net>
parents:
6212
diff
changeset
|
49 empty = short(nullid) |
267 | 50 |
1618
ff339dd21976
Renamed c, a, d, u to modified, added, removed, unknown for users of changes()
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1614
diff
changeset
|
51 for f in modified: |
334 | 52 # TODO get file permissions |
5878
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
53 ui.write(":100664 100664 %s %s M\t%s\t%s\n" % |
6217
fe8dbbe9520d
Avoid importing mercurial.node/mercurial.repo stuff from mercurial.hg
Joel Rosdahl <joel@rosdahl.net>
parents:
6212
diff
changeset
|
54 (short(mmap[f]), short(mmap2[f]), f, f)) |
1618
ff339dd21976
Renamed c, a, d, u to modified, added, removed, unknown for users of changes()
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1614
diff
changeset
|
55 for f in added: |
5878
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
56 ui.write(":000000 100664 %s %s N\t%s\t%s\n" % |
6217
fe8dbbe9520d
Avoid importing mercurial.node/mercurial.repo stuff from mercurial.hg
Joel Rosdahl <joel@rosdahl.net>
parents:
6212
diff
changeset
|
57 (empty, short(mmap2[f]), f, f)) |
1618
ff339dd21976
Renamed c, a, d, u to modified, added, removed, unknown for users of changes()
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1614
diff
changeset
|
58 for f in removed: |
5878
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
59 ui.write(":100664 000000 %s %s D\t%s\t%s\n" % |
6217
fe8dbbe9520d
Avoid importing mercurial.node/mercurial.repo stuff from mercurial.hg
Joel Rosdahl <joel@rosdahl.net>
parents:
6212
diff
changeset
|
60 (short(mmap[f]), empty, f, f)) |
267 | 61 ## |
62 | |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
63 while True: |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
64 if opts['stdin']: |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
65 try: |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
66 line = raw_input().split(' ') |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
67 node1 = line[0] |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
68 if len(line) > 1: |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
69 node2 = line[1] |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
70 else: |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
71 node2 = None |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
72 except EOFError: |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
73 break |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
74 node1 = repo.lookup(node1) |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
75 if node2: |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
76 node2 = repo.lookup(node2) |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
77 else: |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
78 node2 = node1 |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
79 node1 = repo.changelog.parents(node1)[0] |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
80 if opts['patch']: |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
81 if opts['pretty']: |
5878
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
82 catcommit(ui, repo, node2, "") |
6616
e9dfe4e3ee6f
hgk: difftree must match all files when supplied list is empty
Patrick Mezard <pmezard@gmail.com>
parents:
6603
diff
changeset
|
83 m = cmdutil.match(repo, files) |
7308
b6f5490effbf
patch: turn patch.diff() into a generator
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
7000
diff
changeset
|
84 chunks = patch.diff(repo, node1, node2, match=m, |
b6f5490effbf
patch: turn patch.diff() into a generator
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
7000
diff
changeset
|
85 opts=patch.diffopts(ui, {'git': True})) |
b6f5490effbf
patch: turn patch.diff() into a generator
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
7000
diff
changeset
|
86 for chunk in chunks: |
8615
94ca38e63576
use ui instead of repo.ui when the former is in scope
Martin Geisler <mg@lazybytes.net>
parents:
8459
diff
changeset
|
87 ui.write(chunk) |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
88 else: |
3063
aa1cee5b8afb
hgk.py: add an optional file list to debug-diff-tree
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
3059
diff
changeset
|
89 __difftree(repo, node1, node2, files=files) |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
90 if not opts['stdin']: |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
91 break |
267 | 92 |
5878
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
93 def catcommit(ui, repo, n, prefix, ctx=None): |
267 | 94 nlprefix = '\n' + prefix; |
3979
e0d13267f7a4
hgk: use contexts
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
3978
diff
changeset
|
95 if ctx is None: |
6747
f6c00b17387c
use repo[changeid] to get a changectx
Matt Mackall <mpm@selenic.com>
parents:
6666
diff
changeset
|
96 ctx = repo[n] |
6217
fe8dbbe9520d
Avoid importing mercurial.node/mercurial.repo stuff from mercurial.hg
Joel Rosdahl <joel@rosdahl.net>
parents:
6212
diff
changeset
|
97 ui.write("tree %s\n" % short(ctx.changeset()[0])) # use ctx.node() instead ?? |
6768 | 98 for p in ctx.parents(): |
99 ui.write("parent %s\n" % p) | |
100 | |
3979
e0d13267f7a4
hgk: use contexts
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
3978
diff
changeset
|
101 date = ctx.date() |
4039
cc08d2543593
hgk: remove embedded nulls in descriptions
Matt Mackall <mpm@selenic.com>
parents:
3981
diff
changeset
|
102 description = ctx.description().replace("\0", "") |
3979
e0d13267f7a4
hgk: use contexts
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
3978
diff
changeset
|
103 lines = description.splitlines() |
2525
c49dc6f38a19
hgk: Don't choke on empty changelogs
Brendan Cully <brendan@kublai.com>
parents:
2432
diff
changeset
|
104 if lines and lines[-1].startswith('committer:'): |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
105 committer = lines[-1].split(': ')[1].rstrip() |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
106 else: |
3979
e0d13267f7a4
hgk: use contexts
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
3978
diff
changeset
|
107 committer = ctx.user() |
1308
2073e5a71008
Cleanup of tabs and trailing spaces.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1278
diff
changeset
|
108 |
5878
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
109 ui.write("author %s %s %s\n" % (ctx.user(), int(date[0]), date[1])) |
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
110 ui.write("committer %s %s %s\n" % (committer, int(date[0]), date[1])) |
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
111 ui.write("revision %d\n" % ctx.rev()) |
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
112 ui.write("branch %s\n\n" % ctx.branch()) |
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
113 |
267 | 114 if prefix != "": |
5878
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
115 ui.write("%s%s\n" % (prefix, description.replace('\n', nlprefix).strip())) |
267 | 116 else: |
5878
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
117 ui.write(description + "\n") |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
118 if prefix: |
5878
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
119 ui.write('\0') |
267 | 120 |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
121 def base(ui, repo, node1, node2): |
7598 | 122 """output common ancestor information""" |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
123 node1 = repo.lookup(node1) |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
124 node2 = repo.lookup(node2) |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
125 n = repo.changelog.ancestor(node1, node2) |
6217
fe8dbbe9520d
Avoid importing mercurial.node/mercurial.repo stuff from mercurial.hg
Joel Rosdahl <joel@rosdahl.net>
parents:
6212
diff
changeset
|
126 ui.write(short(n) + "\n") |
267 | 127 |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
128 def catfile(ui, repo, type=None, r=None, **opts): |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
129 """cat a specific revision""" |
267 | 130 # in stdin mode, every line except the commit is prefixed with two |
131 # spaces. This way the our caller can find the commit without magic | |
132 # strings | |
133 # | |
134 prefix = "" | |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
135 if opts['stdin']: |
334 | 136 try: |
137 (type, r) = raw_input().split(' '); | |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
138 prefix = " " |
334 | 139 except EOFError: |
140 return | |
267 | 141 |
142 else: | |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
143 if not type or not r: |
6958
e01ed40a31a2
i18n: mark strings for translation in hgk extension
Martin Geisler <mg@daimi.au.dk>
parents:
6812
diff
changeset
|
144 ui.warn(_("cat-file: type or revision not supplied\n")) |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
145 commands.help_(ui, 'cat-file') |
267 | 146 |
147 while r: | |
334 | 148 if type != "commit": |
6958
e01ed40a31a2
i18n: mark strings for translation in hgk extension
Martin Geisler <mg@daimi.au.dk>
parents:
6812
diff
changeset
|
149 ui.warn(_("aborting hg cat-file only understands commits\n")) |
5878
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
150 return 1; |
720
095dd8c757e0
Change hgit revision lookup to use repo.lookup
mason@suse.com
parents:
719
diff
changeset
|
151 n = repo.lookup(r) |
5878
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
152 catcommit(ui, repo, n, prefix) |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
153 if opts['stdin']: |
334 | 154 try: |
155 (type, r) = raw_input().split(' '); | |
156 except EOFError: | |
157 break | |
158 else: | |
159 break | |
267 | 160 |
161 # git rev-tree is a confusing thing. You can supply a number of | |
162 # commit sha1s on the command line, and it walks the commit history | |
163 # telling you which commits are reachable from the supplied ones via | |
164 # a bitmask based on arg position. | |
165 # you can specify a commit to stop at by starting the sha1 with ^ | |
5878
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
166 def revtree(ui, args, repo, full="tree", maxnr=0, parents=False): |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
167 def chlogwalk(): |
6750
fb42030d79d6
add __len__ and __iter__ methods to repo and revlog
Matt Mackall <mpm@selenic.com>
parents:
6747
diff
changeset
|
168 count = len(repo) |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
169 i = count |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
170 l = [0] * 100 |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
171 chunk = 100 |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
172 while True: |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
173 if chunk > i: |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
174 chunk = i |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
175 i = 0 |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
176 else: |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
177 i -= chunk |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
178 |
8624
2b3dec0ef3ae
replace xrange(0, n) with xrange(n)
Martin Geisler <mg@lazybytes.net>
parents:
8615
diff
changeset
|
179 for x in xrange(chunk): |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
180 if i + x >= count: |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
181 l[chunk - x:] = [0] * (chunk - x) |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
182 break |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
183 if full != None: |
6747
f6c00b17387c
use repo[changeid] to get a changectx
Matt Mackall <mpm@selenic.com>
parents:
6666
diff
changeset
|
184 l[x] = repo[i + x] |
3981
180670f14045
hgk: (re)optimize reading of changelog and manifest
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
3979
diff
changeset
|
185 l[x].changeset() # force reading |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
186 else: |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
187 l[x] = 1 |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
188 for x in xrange(chunk-1, -1, -1): |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
189 if l[x] != 0: |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
190 yield (i + x, full != None and l[x] or None) |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
191 if i == 0: |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
192 break |
1308
2073e5a71008
Cleanup of tabs and trailing spaces.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1278
diff
changeset
|
193 |
267 | 194 # calculate and return the reachability bitmask for sha |
195 def is_reachable(ar, reachable, sha): | |
334 | 196 if len(ar) == 0: |
197 return 1 | |
198 mask = 0 | |
3473
0e68608bd11d
use xrange instead of range
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
3180
diff
changeset
|
199 for i in xrange(len(ar)): |
334 | 200 if sha in reachable[i]: |
201 mask |= 1 << i | |
267 | 202 |
334 | 203 return mask |
267 | 204 |
205 reachable = [] | |
206 stop_sha1 = [] | |
207 want_sha1 = [] | |
356 | 208 count = 0 |
267 | 209 |
210 # figure out which commits they are asking for and which ones they | |
211 # want us to stop on | |
8632
9e055cfdd620
replace "i in range(len(xs))" with "i, x in enumerate(xs)"
Martin Geisler <mg@lazybytes.net>
parents:
8624
diff
changeset
|
212 for i, arg in enumerate(args): |
9e055cfdd620
replace "i in range(len(xs))" with "i, x in enumerate(xs)"
Martin Geisler <mg@lazybytes.net>
parents:
8624
diff
changeset
|
213 if arg.startswith('^'): |
9e055cfdd620
replace "i in range(len(xs))" with "i, x in enumerate(xs)"
Martin Geisler <mg@lazybytes.net>
parents:
8624
diff
changeset
|
214 s = repo.lookup(arg[1:]) |
720
095dd8c757e0
Change hgit revision lookup to use repo.lookup
mason@suse.com
parents:
719
diff
changeset
|
215 stop_sha1.append(s) |
334 | 216 want_sha1.append(s) |
8632
9e055cfdd620
replace "i in range(len(xs))" with "i, x in enumerate(xs)"
Martin Geisler <mg@lazybytes.net>
parents:
8624
diff
changeset
|
217 elif arg != 'HEAD': |
9e055cfdd620
replace "i in range(len(xs))" with "i, x in enumerate(xs)"
Martin Geisler <mg@lazybytes.net>
parents:
8624
diff
changeset
|
218 want_sha1.append(repo.lookup(arg)) |
356 | 219 |
267 | 220 # calculate the graph for the supplied commits |
8632
9e055cfdd620
replace "i in range(len(xs))" with "i, x in enumerate(xs)"
Martin Geisler <mg@lazybytes.net>
parents:
8624
diff
changeset
|
221 for i, n in enumerate(want_sha1): |
8459
1e63816ce8a2
hgk: use set instead of dict
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
8228
diff
changeset
|
222 reachable.append(set()); |
334 | 223 visit = [n]; |
8459
1e63816ce8a2
hgk: use set instead of dict
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
8228
diff
changeset
|
224 reachable[i].add(n) |
334 | 225 while visit: |
226 n = visit.pop(0) | |
227 if n in stop_sha1: | |
1243
9d10f89b75a5
Fix hgit revtree bug with stop revision handling
root@coffee.suse.com
parents:
1239
diff
changeset
|
228 continue |
334 | 229 for p in repo.changelog.parents(n): |
230 if p not in reachable[i]: | |
8459
1e63816ce8a2
hgk: use set instead of dict
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
8228
diff
changeset
|
231 reachable[i].add(p) |
334 | 232 visit.append(p) |
233 if p in stop_sha1: | |
1243
9d10f89b75a5
Fix hgit revtree bug with stop revision handling
root@coffee.suse.com
parents:
1239
diff
changeset
|
234 continue |
356 | 235 |
267 | 236 # walk the repository looking for commits that are in our |
237 # reachability graph | |
3979
e0d13267f7a4
hgk: use contexts
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
3978
diff
changeset
|
238 for i, ctx in chlogwalk(): |
334 | 239 n = repo.changelog.node(i) |
240 mask = is_reachable(want_sha1, reachable, n) | |
241 if mask: | |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
242 parentstr = "" |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
243 if parents: |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
244 pp = repo.changelog.parents(n) |
6217
fe8dbbe9520d
Avoid importing mercurial.node/mercurial.repo stuff from mercurial.hg
Joel Rosdahl <joel@rosdahl.net>
parents:
6212
diff
changeset
|
245 if pp[0] != nullid: |
fe8dbbe9520d
Avoid importing mercurial.node/mercurial.repo stuff from mercurial.hg
Joel Rosdahl <joel@rosdahl.net>
parents:
6212
diff
changeset
|
246 parentstr += " " + short(pp[0]) |
fe8dbbe9520d
Avoid importing mercurial.node/mercurial.repo stuff from mercurial.hg
Joel Rosdahl <joel@rosdahl.net>
parents:
6212
diff
changeset
|
247 if pp[1] != nullid: |
fe8dbbe9520d
Avoid importing mercurial.node/mercurial.repo stuff from mercurial.hg
Joel Rosdahl <joel@rosdahl.net>
parents:
6212
diff
changeset
|
248 parentstr += " " + short(pp[1]) |
356 | 249 if not full: |
6217
fe8dbbe9520d
Avoid importing mercurial.node/mercurial.repo stuff from mercurial.hg
Joel Rosdahl <joel@rosdahl.net>
parents:
6212
diff
changeset
|
250 ui.write("%s%s\n" % (short(n), parentstr)) |
3064
fe5c92529d1c
hgk.py: fix warnings from pychecker
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
3063
diff
changeset
|
251 elif full == "commit": |
6217
fe8dbbe9520d
Avoid importing mercurial.node/mercurial.repo stuff from mercurial.hg
Joel Rosdahl <joel@rosdahl.net>
parents:
6212
diff
changeset
|
252 ui.write("%s%s\n" % (short(n), parentstr)) |
5878
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
253 catcommit(ui, repo, n, ' ', ctx) |
356 | 254 else: |
255 (p1, p2) = repo.changelog.parents(n) | |
6217
fe8dbbe9520d
Avoid importing mercurial.node/mercurial.repo stuff from mercurial.hg
Joel Rosdahl <joel@rosdahl.net>
parents:
6212
diff
changeset
|
256 (h, h1, h2) = map(short, (n, p1, p2)) |
356 | 257 (i1, i2) = map(repo.changelog.rev, (p1, p2)) |
267 | 258 |
3979
e0d13267f7a4
hgk: use contexts
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
3978
diff
changeset
|
259 date = ctx.date()[0] |
5878
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
260 ui.write("%s %s:%s" % (date, h, mask)) |
356 | 261 mask = is_reachable(want_sha1, reachable, p1) |
6217
fe8dbbe9520d
Avoid importing mercurial.node/mercurial.repo stuff from mercurial.hg
Joel Rosdahl <joel@rosdahl.net>
parents:
6212
diff
changeset
|
262 if i1 != nullrev and mask > 0: |
5878
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
263 ui.write("%s:%s " % (h1, mask)), |
356 | 264 mask = is_reachable(want_sha1, reachable, p2) |
6217
fe8dbbe9520d
Avoid importing mercurial.node/mercurial.repo stuff from mercurial.hg
Joel Rosdahl <joel@rosdahl.net>
parents:
6212
diff
changeset
|
265 if i2 != nullrev and mask > 0: |
5878
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
266 ui.write("%s:%s " % (h2, mask)) |
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
267 ui.write("\n") |
356 | 268 if maxnr and count >= maxnr: |
269 break | |
270 count += 1 | |
267 | 271 |
3093
edefbb3a3b08
hgk: add --limit, and revranges
Brendan Cully <brendan@kublai.com>
parents:
3092
diff
changeset
|
272 def revparse(ui, repo, *revs, **opts): |
7598 | 273 """parse given revisions""" |
3093
edefbb3a3b08
hgk: add --limit, and revranges
Brendan Cully <brendan@kublai.com>
parents:
3092
diff
changeset
|
274 def revstr(rev): |
edefbb3a3b08
hgk: add --limit, and revranges
Brendan Cully <brendan@kublai.com>
parents:
3092
diff
changeset
|
275 if rev == 'HEAD': |
edefbb3a3b08
hgk: add --limit, and revranges
Brendan Cully <brendan@kublai.com>
parents:
3092
diff
changeset
|
276 rev = 'tip' |
edefbb3a3b08
hgk: add --limit, and revranges
Brendan Cully <brendan@kublai.com>
parents:
3092
diff
changeset
|
277 return revlog.hex(repo.lookup(rev)) |
edefbb3a3b08
hgk: add --limit, and revranges
Brendan Cully <brendan@kublai.com>
parents:
3092
diff
changeset
|
278 |
edefbb3a3b08
hgk: add --limit, and revranges
Brendan Cully <brendan@kublai.com>
parents:
3092
diff
changeset
|
279 for r in revs: |
edefbb3a3b08
hgk: add --limit, and revranges
Brendan Cully <brendan@kublai.com>
parents:
3092
diff
changeset
|
280 revrange = r.split(':', 1) |
edefbb3a3b08
hgk: add --limit, and revranges
Brendan Cully <brendan@kublai.com>
parents:
3092
diff
changeset
|
281 ui.write('%s\n' % revstr(revrange[0])) |
edefbb3a3b08
hgk: add --limit, and revranges
Brendan Cully <brendan@kublai.com>
parents:
3092
diff
changeset
|
282 if len(revrange) == 2: |
edefbb3a3b08
hgk: add --limit, and revranges
Brendan Cully <brendan@kublai.com>
parents:
3092
diff
changeset
|
283 ui.write('^%s\n' % revstr(revrange[1])) |
edefbb3a3b08
hgk: add --limit, and revranges
Brendan Cully <brendan@kublai.com>
parents:
3092
diff
changeset
|
284 |
267 | 285 # git rev-list tries to order things by date, and has the ability to stop |
286 # at a given commit without walking the whole repo. TODO add the stop | |
287 # parameter | |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
288 def revlist(ui, repo, *revs, **opts): |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
289 """print revisions""" |
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
290 if opts['header']: |
356 | 291 full = "commit" |
292 else: | |
293 full = None | |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
294 copy = [x for x in revs] |
5878
d39af2eabb8c
transform a bunch of print statements to appropriate ui calls
Matt Mackall <mpm@selenic.com>
parents:
5859
diff
changeset
|
295 revtree(ui, copy, repo, full, opts['max_count'], opts['parents']) |
267 | 296 |
5393
c2ad1890fc53
hgk: add debug-config command to pass configuration options
Patrick Mezard <pmezard@gmail.com>
parents:
4730
diff
changeset
|
297 def config(ui, repo, **opts): |
c2ad1890fc53
hgk: add debug-config command to pass configuration options
Patrick Mezard <pmezard@gmail.com>
parents:
4730
diff
changeset
|
298 """print extension options""" |
c2ad1890fc53
hgk: add debug-config command to pass configuration options
Patrick Mezard <pmezard@gmail.com>
parents:
4730
diff
changeset
|
299 def writeopt(name, value): |
5760
0145f9afb0e7
Removed tabs and trailing whitespace in python files
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5395
diff
changeset
|
300 ui.write('k=%s\nv=%s\n' % (name, value)) |
5393
c2ad1890fc53
hgk: add debug-config command to pass configuration options
Patrick Mezard <pmezard@gmail.com>
parents:
4730
diff
changeset
|
301 |
c2ad1890fc53
hgk: add debug-config command to pass configuration options
Patrick Mezard <pmezard@gmail.com>
parents:
4730
diff
changeset
|
302 writeopt('vdiff', ui.config('hgk', 'vdiff', '')) |
5760
0145f9afb0e7
Removed tabs and trailing whitespace in python files
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5395
diff
changeset
|
303 |
5393
c2ad1890fc53
hgk: add debug-config command to pass configuration options
Patrick Mezard <pmezard@gmail.com>
parents:
4730
diff
changeset
|
304 |
3093
edefbb3a3b08
hgk: add --limit, and revranges
Brendan Cully <brendan@kublai.com>
parents:
3092
diff
changeset
|
305 def view(ui, repo, *etc, **opts): |
1278 | 306 "start interactive history viewer" |
307 os.chdir(repo.root) | |
3180
eb0906ebba81
hgk: fix mixup of --limit and REVRANGE in hgk call
TK Soh <teekaysoh@yahoo.com>
parents:
3093
diff
changeset
|
308 optstr = ' '.join(['--%s %s' % (k, v) for k, v in opts.iteritems() if v]) |
eb0906ebba81
hgk: fix mixup of --limit and REVRANGE in hgk call
TK Soh <teekaysoh@yahoo.com>
parents:
3093
diff
changeset
|
309 cmd = ui.config("hgk", "path", "hgk") + " %s %s" % (optstr, " ".join(etc)) |
6958
e01ed40a31a2
i18n: mark strings for translation in hgk extension
Martin Geisler <mg@daimi.au.dk>
parents:
6812
diff
changeset
|
310 ui.debug(_("running %s\n") % cmd) |
4688
39001f4b7d99
hgk: Use $HG instead of hg (see 849f011dbf79)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
4039
diff
changeset
|
311 util.system(cmd) |
1278 | 312 |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
313 cmdtable = { |
4730
eadfaa9ec487
Updated command tables in commands.py and hgext extensions.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
4688
diff
changeset
|
314 "^view": |
eadfaa9ec487
Updated command tables in commands.py and hgext extensions.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
4688
diff
changeset
|
315 (view, |
7000
af694c6a888c
i18n, hgk: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6958
diff
changeset
|
316 [('l', 'limit', '', _('limit number of changes displayed'))], |
af694c6a888c
i18n, hgk: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6958
diff
changeset
|
317 _('hg view [-l LIMIT] [REVRANGE]')), |
4730
eadfaa9ec487
Updated command tables in commands.py and hgext extensions.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
4688
diff
changeset
|
318 "debug-diff-tree": |
eadfaa9ec487
Updated command tables in commands.py and hgext extensions.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
4688
diff
changeset
|
319 (difftree, |
7000
af694c6a888c
i18n, hgk: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6958
diff
changeset
|
320 [('p', 'patch', None, _('generate patch')), |
af694c6a888c
i18n, hgk: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6958
diff
changeset
|
321 ('r', 'recursive', None, _('recursive')), |
af694c6a888c
i18n, hgk: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6958
diff
changeset
|
322 ('P', 'pretty', None, _('pretty')), |
af694c6a888c
i18n, hgk: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6958
diff
changeset
|
323 ('s', 'stdin', None, _('stdin')), |
af694c6a888c
i18n, hgk: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6958
diff
changeset
|
324 ('C', 'copy', None, _('detect copies')), |
af694c6a888c
i18n, hgk: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6958
diff
changeset
|
325 ('S', 'search', "", _('search'))], |
af694c6a888c
i18n, hgk: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6958
diff
changeset
|
326 _('hg git-diff-tree [OPTION]... NODE1 NODE2 [FILE]...')), |
4730
eadfaa9ec487
Updated command tables in commands.py and hgext extensions.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
4688
diff
changeset
|
327 "debug-cat-file": |
eadfaa9ec487
Updated command tables in commands.py and hgext extensions.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
4688
diff
changeset
|
328 (catfile, |
7000
af694c6a888c
i18n, hgk: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6958
diff
changeset
|
329 [('s', 'stdin', None, _('stdin'))], |
af694c6a888c
i18n, hgk: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6958
diff
changeset
|
330 _('hg debug-cat-file [OPTION]... TYPE FILE')), |
5393
c2ad1890fc53
hgk: add debug-config command to pass configuration options
Patrick Mezard <pmezard@gmail.com>
parents:
4730
diff
changeset
|
331 "debug-config": |
7000
af694c6a888c
i18n, hgk: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6958
diff
changeset
|
332 (config, [], _('hg debug-config')), |
4730
eadfaa9ec487
Updated command tables in commands.py and hgext extensions.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
4688
diff
changeset
|
333 "debug-merge-base": |
7000
af694c6a888c
i18n, hgk: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6958
diff
changeset
|
334 (base, [], _('hg debug-merge-base node node')), |
4730
eadfaa9ec487
Updated command tables in commands.py and hgext extensions.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
4688
diff
changeset
|
335 "debug-rev-parse": |
eadfaa9ec487
Updated command tables in commands.py and hgext extensions.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
4688
diff
changeset
|
336 (revparse, |
7000
af694c6a888c
i18n, hgk: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6958
diff
changeset
|
337 [('', 'default', '', _('ignored'))], |
af694c6a888c
i18n, hgk: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6958
diff
changeset
|
338 _('hg debug-rev-parse REV')), |
4730
eadfaa9ec487
Updated command tables in commands.py and hgext extensions.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
4688
diff
changeset
|
339 "debug-rev-list": |
eadfaa9ec487
Updated command tables in commands.py and hgext extensions.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
4688
diff
changeset
|
340 (revlist, |
7000
af694c6a888c
i18n, hgk: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6958
diff
changeset
|
341 [('H', 'header', None, _('header')), |
af694c6a888c
i18n, hgk: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6958
diff
changeset
|
342 ('t', 'topo-order', None, _('topo-order')), |
af694c6a888c
i18n, hgk: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6958
diff
changeset
|
343 ('p', 'parents', None, _('parents')), |
af694c6a888c
i18n, hgk: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6958
diff
changeset
|
344 ('n', 'max-count', 0, _('max-count'))], |
af694c6a888c
i18n, hgk: mark command line options for translation
Martin Geisler <mg@daimi.au.dk>
parents:
6958
diff
changeset
|
345 _('hg debug-rev-list [options] revs')), |
1239
29f17e083e84
Turn hgit into an extension, and add commands supporting the latest gitk
mason@suse.com
parents:
740
diff
changeset
|
346 } |