Mercurial > hg
annotate hgext/githelp.py @ 37295:45b39c69fae0
wireproto: separate commands tables for version 1 and 2 commands
We can't easily reuse existing command handlers for version 2
commands because the response types will be different. e.g. many
commands return nodes encoded as hex. Our new wire protocol is
binary safe, so we'll wish to encode nodes as binary.
We /could/ teach each command handler to look at the protocol
handler and change behavior based on the version in use. However,
this would make logic a bit unwieldy over time and would make
it harder to design a unified protocol handler interface. I think
it's better to create a clean break between version 1 and version 2
of commands on the server.
What I imagine happening is we will have separate @wireprotocommand
functions for each protocol generation. Those functions will parse the
request, dispatch to a common function to process it, then generate
the response in its own, transport-specific manner.
This commit establishes a separate table for tracking version 1
commands from version 2 commands. The HTTP server pieces have been
updated to use this new table.
Most commands are marked as both version 1 and version 2, so there is
little practical impact to this change.
A side-effect of this change is we now rely on transport registration
in wireprototypes.TRANSPORTS and certain properties of the protocol
interface. So a test had to be updated to conform.
Differential Revision: https://phab.mercurial-scm.org/D2982
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Wed, 28 Mar 2018 10:40:41 -0700 |
parents | a8a902d7176e |
children | 764ada920db5 |
rev | line source |
---|---|
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1 # githelp.py - Try to map Git commands to Mercurial equivalents. |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
2 # |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
3 # Copyright 2013 Facebook, Inc. |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
4 # |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
5 # This software may be used and distributed according to the terms of the |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
6 # GNU General Public License version 2 or any later version. |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
7 """try mapping git commands to Mercurial commands |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
8 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
9 Tries to map a given git command to a Mercurial command: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
10 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
11 $ hg githelp -- git checkout master |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
12 hg update master |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
13 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
14 If an unknown command or parameter combination is detected, an error is |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
15 produced. |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
16 """ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
17 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
18 from __future__ import absolute_import |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
19 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
20 import getopt |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
21 import re |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
22 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
23 from mercurial.i18n import _ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
24 from mercurial import ( |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
25 encoding, |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
26 error, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
27 fancyopts, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
28 registrar, |
37120
a8a902d7176e
procutil: bulk-replace function calls to point to new module
Yuya Nishihara <yuya@tcha.org>
parents:
36230
diff
changeset
|
29 ) |
a8a902d7176e
procutil: bulk-replace function calls to point to new module
Yuya Nishihara <yuya@tcha.org>
parents:
36230
diff
changeset
|
30 from mercurial.utils import ( |
a8a902d7176e
procutil: bulk-replace function calls to point to new module
Yuya Nishihara <yuya@tcha.org>
parents:
36230
diff
changeset
|
31 procutil, |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
32 ) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
33 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
34 # Note for extension authors: ONLY specify testedwith = 'ships-with-hg-core' for |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
35 # extensions which SHIP WITH MERCURIAL. Non-mainline extensions should |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
36 # be specifying the version(s) of Mercurial they are tested with, or |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
37 # leave the attribute unspecified. |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
38 testedwith = 'ships-with-hg-core' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
39 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
40 cmdtable = {} |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
41 command = registrar.command(cmdtable) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
42 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
43 def convert(s): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
44 if s.startswith("origin/"): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
45 return s[7:] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
46 if 'HEAD' in s: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
47 s = s.replace('HEAD', '.') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
48 # HEAD~ in git is .~1 in mercurial |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
49 s = re.sub('~$', '~1', s) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
50 return s |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
51 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
52 @command('^githelp|git', [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
53 ], _('hg githelp')) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
54 def githelp(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
55 '''suggests the Mercurial equivalent of the given git command |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
56 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
57 Usage: hg githelp -- <git command> |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
58 ''' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
59 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
60 if len(args) == 0 or (len(args) == 1 and args[0] =='git'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
61 raise error.Abort(_('missing git command - ' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
62 'usage: hg githelp -- <git command>')) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
63 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
64 if args[0] == 'git': |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
65 args = args[1:] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
66 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
67 cmd = args[0] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
68 if not cmd in gitcommands: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
69 raise error.Abort("error: unknown git command %s" % (cmd)) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
70 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
71 ui.pager('githelp') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
72 args = args[1:] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
73 return gitcommands[cmd](ui, repo, *args, **kwargs) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
74 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
75 def parseoptions(ui, cmdoptions, args): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
76 cmdoptions = list(cmdoptions) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
77 opts = {} |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
78 args = list(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
79 while True: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
80 try: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
81 args = fancyopts.fancyopts(list(args), cmdoptions, opts, True) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
82 break |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
83 except getopt.GetoptError as ex: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
84 flag = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
85 if "requires argument" in ex.msg: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
86 raise |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
87 if ('--' + ex.opt) in ex.msg: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
88 flag = '--' + ex.opt |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
89 elif ('-' + ex.opt) in ex.msg: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
90 flag = '-' + ex.opt |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
91 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
92 raise error.Abort("unknown option %s" % ex.opt) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
93 try: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
94 args.remove(flag) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
95 except Exception: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
96 raise error.Abort( |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
97 "unknown option {0} packed with other options\n" |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
98 "Please try passing the option as it's own flag: -{0}" \ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
99 .format(ex.opt)) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
100 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
101 ui.warn(_("ignoring unknown option %s\n") % flag) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
102 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
103 args = list([convert(x) for x in args]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
104 opts = dict([(k, convert(v)) if isinstance(v, str) else (k, v) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
105 for k, v in opts.iteritems()]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
106 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
107 return args, opts |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
108 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
109 class Command(object): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
110 def __init__(self, name): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
111 self.name = name |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
112 self.args = [] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
113 self.opts = {} |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
114 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
115 def __bytes__(self): |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
116 cmd = "hg " + self.name |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
117 if self.opts: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
118 for k, values in sorted(self.opts.iteritems()): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
119 for v in values: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
120 if v: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
121 cmd += " %s %s" % (k, v) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
122 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
123 cmd += " %s" % (k,) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
124 if self.args: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
125 cmd += " " |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
126 cmd += " ".join(self.args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
127 return cmd |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
128 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
129 __str__ = encoding.strmethod(__bytes__) |
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
130 |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
131 def append(self, value): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
132 self.args.append(value) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
133 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
134 def extend(self, values): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
135 self.args.extend(values) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
136 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
137 def __setitem__(self, key, value): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
138 values = self.opts.setdefault(key, []) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
139 values.append(value) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
140 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
141 def __and__(self, other): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
142 return AndCommand(self, other) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
143 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
144 class AndCommand(object): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
145 def __init__(self, left, right): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
146 self.left = left |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
147 self.right = right |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
148 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
149 def __str__(self): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
150 return "%s && %s" % (self.left, self.right) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
151 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
152 def __and__(self, other): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
153 return AndCommand(self, other) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
154 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
155 def add(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
156 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
157 ('A', 'all', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
158 ('p', 'patch', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
159 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
160 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
161 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
162 if (opts.get('patch')): |
35715
8dbd000f7de9
githelp: improve help for `git add`
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35714
diff
changeset
|
163 ui.status(_("note: Mercurial will commit when complete, " |
8dbd000f7de9
githelp: improve help for `git add`
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35714
diff
changeset
|
164 "as there is no staging area in Mercurial\n\n")) |
8dbd000f7de9
githelp: improve help for `git add`
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35714
diff
changeset
|
165 cmd = Command('commit --interactive') |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
166 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
167 cmd = Command("add") |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
168 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
169 if not opts.get('all'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
170 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
171 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
172 ui.status(_("note: use hg addremove to remove files that have " |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
173 "been deleted.\n\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
174 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
175 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
176 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
177 def am(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
178 cmdoptions=[ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
179 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
180 args, opts = parseoptions(ui, cmdoptions, args) |
35716
05b8adf38c55
githelp: recommend `hg import` for `git am`
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35715
diff
changeset
|
181 cmd = Command('import') |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
182 ui.status(bytes(cmd), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
183 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
184 def apply(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
185 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
186 ('p', 'p', int, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
187 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
188 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
189 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
190 cmd = Command('import --no-commit') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
191 if (opts.get('p')): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
192 cmd['-p'] = opts.get('p') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
193 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
194 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
195 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
196 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
197 def bisect(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
198 ui.status(_("See 'hg help bisect' for how to use bisect.\n\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
199 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
200 def blame(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
201 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
202 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
203 args, opts = parseoptions(ui, cmdoptions, args) |
35717
5edfead8cc95
githelp: remove reference to tweakdefaults
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35716
diff
changeset
|
204 cmd = Command('annotate -udl') |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
205 cmd.extend([convert(v) for v in args]) |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
206 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
207 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
208 def branch(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
209 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
210 ('', 'set-upstream', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
211 ('', 'set-upstream-to', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
212 ('d', 'delete', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
213 ('D', 'delete', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
214 ('m', 'move', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
215 ('M', 'move', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
216 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
217 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
218 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
219 cmd = Command("bookmark") |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
220 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
221 if opts.get('set_upstream') or opts.get('set_upstream_to'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
222 ui.status(_("Mercurial has no concept of upstream branches\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
223 return |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
224 elif opts.get('delete'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
225 cmd = Command("strip") |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
226 for branch in args: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
227 cmd['-B'] = branch |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
228 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
229 cmd['-B'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
230 elif opts.get('move'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
231 if len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
232 if len(args) > 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
233 old = args.pop(0) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
234 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
235 # shell command to output the active bookmark for the active |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
236 # revision |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
237 old = '`hg log -T"{activebookmark}" -r .`' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
238 new = args[0] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
239 cmd['-m'] = old |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
240 cmd.append(new) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
241 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
242 if len(args) > 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
243 cmd['-r'] = args[1] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
244 cmd.append(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
245 elif len(args) == 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
246 cmd.append(args[0]) |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
247 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
248 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
249 def ispath(repo, string): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
250 """ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
251 The first argument to git checkout can either be a revision or a path. Let's |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
252 generally assume it's a revision, unless it's obviously a path. There are |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
253 too many ways to spell revisions in git for us to reasonably catch all of |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
254 them, so let's be conservative. |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
255 """ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
256 if string in repo: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
257 # if it's definitely a revision let's not even check if a file of the |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
258 # same name exists. |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
259 return False |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
260 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
261 cwd = repo.getcwd() |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
262 if cwd == '': |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
263 repopath = string |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
264 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
265 repopath = cwd + '/' + string |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
266 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
267 exists = repo.wvfs.exists(repopath) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
268 if exists: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
269 return True |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
270 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
271 manifest = repo['.'].manifest() |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
272 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
273 didexist = (repopath in manifest) or manifest.hasdir(repopath) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
274 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
275 return didexist |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
276 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
277 def checkout(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
278 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
279 ('b', 'branch', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
280 ('B', 'branch', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
281 ('f', 'force', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
282 ('p', 'patch', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
283 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
284 paths = [] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
285 if '--' in args: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
286 sepindex = args.index('--') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
287 paths.extend(args[sepindex + 1:]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
288 args = args[:sepindex] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
289 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
290 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
291 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
292 rev = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
293 if args and ispath(repo, args[0]): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
294 paths = args + paths |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
295 elif args: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
296 rev = args[0] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
297 paths = args[1:] + paths |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
298 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
299 cmd = Command('update') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
300 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
301 if opts.get('force'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
302 if paths or rev: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
303 cmd['-C'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
304 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
305 if opts.get('patch'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
306 cmd = Command('revert') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
307 cmd['-i'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
308 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
309 if opts.get('branch'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
310 if len(args) == 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
311 cmd = Command('bookmark') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
312 cmd.append(opts.get('branch')) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
313 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
314 cmd.append(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
315 bookcmd = Command('bookmark') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
316 bookcmd.append(opts.get('branch')) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
317 cmd = cmd & bookcmd |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
318 # if there is any path argument supplied, use revert instead of update |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
319 elif len(paths) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
320 ui.status(_("note: use --no-backup to avoid creating .orig files\n\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
321 cmd = Command('revert') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
322 if opts.get('patch'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
323 cmd['-i'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
324 if rev: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
325 cmd['-r'] = rev |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
326 cmd.extend(paths) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
327 elif rev: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
328 if opts.get('patch'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
329 cmd['-r'] = rev |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
330 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
331 cmd.append(rev) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
332 elif opts.get('force'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
333 cmd = Command('revert') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
334 cmd['--all'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
335 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
336 raise error.Abort("a commit must be specified") |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
337 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
338 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
339 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
340 def cherrypick(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
341 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
342 ('', 'continue', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
343 ('', 'abort', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
344 ('e', 'edit', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
345 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
346 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
347 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
348 cmd = Command('graft') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
349 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
350 if opts.get('edit'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
351 cmd['--edit'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
352 if opts.get('continue'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
353 cmd['--continue'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
354 elif opts.get('abort'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
355 ui.status(_("note: hg graft does not have --abort.\n\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
356 return |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
357 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
358 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
359 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
360 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
361 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
362 def clean(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
363 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
364 ('d', 'd', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
365 ('f', 'force', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
366 ('x', 'x', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
367 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
368 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
369 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
370 cmd = Command('purge') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
371 if opts.get('x'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
372 cmd['--all'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
373 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
374 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
375 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
376 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
377 def clone(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
378 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
379 ('', 'bare', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
380 ('n', 'no-checkout', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
381 ('b', 'branch', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
382 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
383 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
384 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
385 if len(args) == 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
386 raise error.Abort("a repository to clone must be specified") |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
387 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
388 cmd = Command('clone') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
389 cmd.append(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
390 if len(args) > 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
391 cmd.append(args[1]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
392 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
393 if opts.get('bare'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
394 cmd['-U'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
395 ui.status(_("note: Mercurial does not have bare clones. " + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
396 "-U will clone the repo without checking out a commit\n\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
397 elif opts.get('no_checkout'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
398 cmd['-U'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
399 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
400 if opts.get('branch'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
401 cocmd = Command("update") |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
402 cocmd.append(opts.get('branch')) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
403 cmd = cmd & cocmd |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
404 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
405 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
406 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
407 def commit(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
408 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
409 ('a', 'all', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
410 ('m', 'message', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
411 ('p', 'patch', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
412 ('C', 'reuse-message', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
413 ('F', 'file', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
414 ('', 'author', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
415 ('', 'date', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
416 ('', 'amend', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
417 ('', 'no-edit', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
418 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
419 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
420 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
421 cmd = Command('commit') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
422 if opts.get('patch'): |
35718
a10a0d5561a9
githelp: replace suggestion of `hg record`
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35717
diff
changeset
|
423 cmd = Command('commit --interactive') |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
424 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
425 if opts.get('amend'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
426 if opts.get('no_edit'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
427 cmd = Command('amend') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
428 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
429 cmd['--amend'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
430 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
431 if opts.get('reuse_message'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
432 cmd['-M'] = opts.get('reuse_message') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
433 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
434 if opts.get('message'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
435 cmd['-m'] = "'%s'" % (opts.get('message'),) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
436 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
437 if opts.get('all'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
438 ui.status(_("note: Mercurial doesn't have a staging area, " + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
439 "so there is no --all. -A will add and remove files " + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
440 "for you though.\n\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
441 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
442 if opts.get('file'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
443 cmd['-l'] = opts.get('file') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
444 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
445 if opts.get('author'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
446 cmd['-u'] = opts.get('author') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
447 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
448 if opts.get('date'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
449 cmd['-d'] = opts.get('date') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
450 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
451 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
452 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
453 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
454 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
455 def deprecated(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
456 ui.warn(_('This command has been deprecated in the git project, ' + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
457 'thus isn\'t supported by this tool.\n\n')) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
458 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
459 def diff(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
460 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
461 ('a', 'all', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
462 ('', 'cached', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
463 ('R', 'reverse', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
464 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
465 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
466 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
467 cmd = Command('diff') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
468 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
469 if opts.get('cached'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
470 ui.status(_('note: Mercurial has no concept of a staging area, ' + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
471 'so --cached does nothing.\n\n')) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
472 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
473 if opts.get('reverse'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
474 cmd['--reverse'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
475 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
476 for a in list(args): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
477 args.remove(a) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
478 try: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
479 repo.revs(a) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
480 cmd['-r'] = a |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
481 except Exception: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
482 cmd.append(a) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
483 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
484 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
485 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
486 def difftool(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
487 ui.status(_('Mercurial does not enable external difftool by default. You ' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
488 'need to enable the extdiff extension in your .hgrc file by adding\n' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
489 'extdiff =\n' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
490 'to the [extensions] section and then running\n\n' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
491 'hg extdiff -p <program>\n\n' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
492 'See \'hg help extdiff\' and \'hg help -e extdiff\' for more ' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
493 'information.\n')) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
494 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
495 def fetch(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
496 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
497 ('', 'all', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
498 ('f', 'force', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
499 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
500 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
501 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
502 cmd = Command('pull') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
503 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
504 if len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
505 cmd.append(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
506 if len(args) > 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
507 ui.status(_("note: Mercurial doesn't have refspecs. " + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
508 "-r can be used to specify which commits you want to pull. " + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
509 "-B can be used to specify which bookmark you want to pull." + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
510 "\n\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
511 for v in args[1:]: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
512 if v in repo._bookmarks: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
513 cmd['-B'] = v |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
514 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
515 cmd['-r'] = v |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
516 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
517 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
518 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
519 def grep(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
520 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
521 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
522 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
523 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
524 cmd = Command('grep') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
525 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
526 # For basic usage, git grep and hg grep are the same. They both have the |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
527 # pattern first, followed by paths. |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
528 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
529 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
530 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
531 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
532 def init(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
533 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
534 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
535 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
536 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
537 cmd = Command('init') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
538 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
539 if len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
540 cmd.append(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
541 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
542 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
543 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
544 def log(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
545 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
546 ('', 'follow', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
547 ('', 'decorate', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
548 ('n', 'number', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
549 ('1', '1', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
550 ('', 'pretty', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
551 ('', 'format', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
552 ('', 'oneline', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
553 ('', 'stat', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
554 ('', 'graph', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
555 ('p', 'patch', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
556 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
557 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
558 ui.status(_('note: -v prints the entire commit message like Git does. To ' + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
559 'print just the first line, drop the -v.\n\n')) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
560 ui.status(_("note: see hg help revset for information on how to filter " + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
561 "log output.\n\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
562 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
563 cmd = Command('log') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
564 cmd['-v'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
565 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
566 if opts.get('number'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
567 cmd['-l'] = opts.get('number') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
568 if opts.get('1'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
569 cmd['-l'] = '1' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
570 if opts.get('stat'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
571 cmd['--stat'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
572 if opts.get('graph'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
573 cmd['-G'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
574 if opts.get('patch'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
575 cmd['-p'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
576 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
577 if opts.get('pretty') or opts.get('format') or opts.get('oneline'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
578 format = opts.get('format', '') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
579 if 'format:' in format: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
580 ui.status(_("note: --format format:??? equates to Mercurial's " + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
581 "--template. See hg help templates for more info.\n\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
582 cmd['--template'] = '???' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
583 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
584 ui.status(_("note: --pretty/format/oneline equate to Mercurial's " + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
585 "--style or --template. See hg help templates for more info." + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
586 "\n\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
587 cmd['--style'] = '???' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
588 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
589 if len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
590 if '..' in args[0]: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
591 since, until = args[0].split('..') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
592 cmd['-r'] = "'%s::%s'" % (since, until) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
593 del args[0] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
594 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
595 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
596 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
597 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
598 def lsfiles(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
599 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
600 ('c', 'cached', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
601 ('d', 'deleted', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
602 ('m', 'modified', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
603 ('o', 'others', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
604 ('i', 'ignored', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
605 ('s', 'stage', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
606 ('z', '_zero', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
607 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
608 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
609 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
610 if (opts.get('modified') or opts.get('deleted') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
611 or opts.get('others') or opts.get('ignored')): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
612 cmd = Command('status') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
613 if opts.get('deleted'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
614 cmd['-d'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
615 if opts.get('modified'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
616 cmd['-m'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
617 if opts.get('others'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
618 cmd['-o'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
619 if opts.get('ignored'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
620 cmd['-i'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
621 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
622 cmd = Command('files') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
623 if opts.get('stage'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
624 ui.status(_("note: Mercurial doesn't have a staging area, ignoring " |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
625 "--stage\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
626 if opts.get('_zero'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
627 cmd['-0'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
628 cmd.append('.') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
629 for include in args: |
37120
a8a902d7176e
procutil: bulk-replace function calls to point to new module
Yuya Nishihara <yuya@tcha.org>
parents:
36230
diff
changeset
|
630 cmd['-I'] = procutil.shellquote(include) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
631 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
632 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
633 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
634 def merge(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
635 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
636 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
637 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
638 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
639 cmd = Command('merge') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
640 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
641 if len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
642 cmd.append(args[len(args) - 1]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
643 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
644 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
645 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
646 def mergebase(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
647 cmdoptions = [] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
648 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
649 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
650 if len(args) != 2: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
651 args = ['A', 'B'] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
652 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
653 cmd = Command("log -T '{node}\\n' -r 'ancestor(%s,%s)'" |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
654 % (args[0], args[1])) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
655 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
656 ui.status(_('NOTE: ancestors() is part of the revset language.\n'), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
657 _("Learn more about revsets with 'hg help revsets'\n\n")) |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
658 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
659 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
660 def mergetool(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
661 cmdoptions = [] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
662 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
663 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
664 cmd = Command("resolve") |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
665 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
666 if len(args) == 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
667 cmd['--all'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
668 cmd.extend(args) |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
669 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
670 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
671 def mv(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
672 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
673 ('f', 'force', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
674 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
675 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
676 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
677 cmd = Command('mv') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
678 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
679 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
680 if opts.get('force'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
681 cmd['-f'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
682 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
683 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
684 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
685 def pull(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
686 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
687 ('', 'all', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
688 ('f', 'force', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
689 ('r', 'rebase', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
690 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
691 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
692 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
693 cmd = Command('pull') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
694 cmd['--rebase'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
695 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
696 if len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
697 cmd.append(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
698 if len(args) > 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
699 ui.status(_("note: Mercurial doesn't have refspecs. " + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
700 "-r can be used to specify which commits you want to pull. " + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
701 "-B can be used to specify which bookmark you want to pull." + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
702 "\n\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
703 for v in args[1:]: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
704 if v in repo._bookmarks: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
705 cmd['-B'] = v |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
706 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
707 cmd['-r'] = v |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
708 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
709 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
710 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
711 def push(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
712 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
713 ('', 'all', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
714 ('f', 'force', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
715 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
716 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
717 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
718 cmd = Command('push') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
719 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
720 if len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
721 cmd.append(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
722 if len(args) > 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
723 ui.status(_("note: Mercurial doesn't have refspecs. " + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
724 "-r can be used to specify which commits you want to push. " + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
725 "-B can be used to specify which bookmark you want to push." + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
726 "\n\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
727 for v in args[1:]: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
728 if v in repo._bookmarks: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
729 cmd['-B'] = v |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
730 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
731 cmd['-r'] = v |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
732 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
733 if opts.get('force'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
734 cmd['-f'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
735 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
736 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
737 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
738 def rebase(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
739 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
740 ('', 'all', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
741 ('i', 'interactive', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
742 ('', 'onto', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
743 ('', 'abort', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
744 ('', 'continue', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
745 ('', 'skip', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
746 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
747 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
748 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
749 if opts.get('interactive'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
750 ui.status(_("note: hg histedit does not perform a rebase. " + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
751 "It just edits history.\n\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
752 cmd = Command('histedit') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
753 if len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
754 ui.status(_("also note: 'hg histedit' will automatically detect" |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
755 " your stack, so no second argument is necessary.\n\n")) |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
756 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
757 return |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
758 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
759 if opts.get('skip'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
760 cmd = Command('revert --all -r .') |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
761 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
762 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
763 cmd = Command('rebase') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
764 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
765 if opts.get('continue') or opts.get('skip'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
766 cmd['--continue'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
767 if opts.get('abort'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
768 cmd['--abort'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
769 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
770 if opts.get('onto'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
771 ui.status(_("note: if you're trying to lift a commit off one branch, " + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
772 "try hg rebase -d <destination commit> -s <commit to be lifted>" + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
773 "\n\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
774 cmd['-d'] = convert(opts.get('onto')) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
775 if len(args) < 2: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
776 raise error.Abort("Expected format: git rebase --onto X Y Z") |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
777 cmd['-s'] = "'::%s - ::%s'" % (convert(args[1]), convert(args[0])) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
778 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
779 if len(args) == 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
780 cmd['-d'] = convert(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
781 elif len(args) == 2: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
782 cmd['-d'] = convert(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
783 cmd['-b'] = convert(args[1]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
784 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
785 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
786 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
787 def reflog(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
788 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
789 ('', 'all', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
790 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
791 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
792 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
793 cmd = Command('journal') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
794 if opts.get('all'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
795 cmd['--all'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
796 if len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
797 cmd.append(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
798 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
799 ui.status(bytes(cmd), "\n\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
800 ui.status(_("note: in hg commits can be deleted from repo but we always" |
35719
a4cd8f527a7f
githelp: clean up reflog help
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35718
diff
changeset
|
801 " have backups.\n")) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
802 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
803 def reset(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
804 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
805 ('', 'soft', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
806 ('', 'hard', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
807 ('', 'mixed', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
808 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
809 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
810 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
811 commit = convert(args[0] if len(args) > 0 else '.') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
812 hard = opts.get('hard') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
813 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
814 if opts.get('mixed'): |
35720
b3cf58487731
githelp: improve help for "reset"
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35719
diff
changeset
|
815 ui.status(_('NOTE: --mixed has no meaning since Mercurial has no ' |
b3cf58487731
githelp: improve help for "reset"
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35719
diff
changeset
|
816 'staging area\n\n')) |
b3cf58487731
githelp: improve help for "reset"
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35719
diff
changeset
|
817 if opts.get('soft'): |
b3cf58487731
githelp: improve help for "reset"
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35719
diff
changeset
|
818 ui.status(_('NOTE: --soft has no meaning since Mercurial has no ' |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
819 'staging area\n\n')) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
820 |
35720
b3cf58487731
githelp: improve help for "reset"
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35719
diff
changeset
|
821 cmd = Command('update') |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
822 if hard: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
823 cmd.append('--clean') |
35720
b3cf58487731
githelp: improve help for "reset"
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35719
diff
changeset
|
824 |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
825 cmd.append(commit) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
826 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
827 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
828 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
829 def revert(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
830 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
831 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
832 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
833 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
834 if len(args) > 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
835 ui.status(_("note: hg backout doesn't support multiple commits at " + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
836 "once\n\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
837 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
838 cmd = Command('backout') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
839 if args: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
840 cmd.append(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
841 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
842 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
843 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
844 def revparse(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
845 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
846 ('', 'show-cdup', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
847 ('', 'show-toplevel', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
848 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
849 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
850 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
851 if opts.get('show_cdup') or opts.get('show_toplevel'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
852 cmd = Command('root') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
853 if opts.get('show_cdup'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
854 ui.status(_("note: hg root prints the root of the repository\n\n")) |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
855 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
856 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
857 ui.status(_("note: see hg help revset for how to refer to commits\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
858 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
859 def rm(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
860 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
861 ('f', 'force', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
862 ('n', 'dry-run', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
863 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
864 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
865 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
866 cmd = Command('rm') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
867 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
868 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
869 if opts.get('force'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
870 cmd['-f'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
871 if opts.get('dry_run'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
872 cmd['-n'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
873 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
874 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
875 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
876 def show(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
877 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
878 ('', 'name-status', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
879 ('', 'pretty', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
880 ('U', 'unified', int, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
881 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
882 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
883 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
884 if opts.get('name_status'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
885 if opts.get('pretty') == 'format:': |
35721
f50067fbeead
githelp: don't reference 3rd party commands for `git show`
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35720
diff
changeset
|
886 cmd = Command('status') |
f50067fbeead
githelp: don't reference 3rd party commands for `git show`
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35720
diff
changeset
|
887 cmd['--change'] = '.' |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
888 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
889 cmd = Command('log') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
890 cmd.append('--style status') |
35721
f50067fbeead
githelp: don't reference 3rd party commands for `git show`
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35720
diff
changeset
|
891 cmd.append('-r .') |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
892 elif len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
893 if ispath(repo, args[0]): |
35721
f50067fbeead
githelp: don't reference 3rd party commands for `git show`
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35720
diff
changeset
|
894 cmd = Command('cat') |
f50067fbeead
githelp: don't reference 3rd party commands for `git show`
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35720
diff
changeset
|
895 else: |
f50067fbeead
githelp: don't reference 3rd party commands for `git show`
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35720
diff
changeset
|
896 cmd = Command('export') |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
897 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
898 if opts.get('unified'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
899 cmd.append('--config diff.unified=%d' % (opts['unified'],)) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
900 elif opts.get('unified'): |
35721
f50067fbeead
githelp: don't reference 3rd party commands for `git show`
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35720
diff
changeset
|
901 cmd = Command('export') |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
902 cmd.append('--config diff.unified=%d' % (opts['unified'],)) |
35721
f50067fbeead
githelp: don't reference 3rd party commands for `git show`
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35720
diff
changeset
|
903 else: |
f50067fbeead
githelp: don't reference 3rd party commands for `git show`
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35720
diff
changeset
|
904 cmd = Command('export') |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
905 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
906 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
907 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
908 def stash(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
909 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
910 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
911 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
912 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
913 cmd = Command('shelve') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
914 action = args[0] if len(args) > 0 else None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
915 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
916 if action == 'list': |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
917 cmd['-l'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
918 elif action == 'drop': |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
919 cmd['-d'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
920 if len(args) > 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
921 cmd.append(args[1]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
922 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
923 cmd.append('<shelve name>') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
924 elif action == 'pop' or action == 'apply': |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
925 cmd = Command('unshelve') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
926 if len(args) > 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
927 cmd.append(args[1]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
928 if action == 'apply': |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
929 cmd['--keep'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
930 elif (action == 'branch' or action == 'show' or action == 'clear' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
931 or action == 'create'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
932 ui.status(_("note: Mercurial doesn't have equivalents to the " + |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
933 "git stash branch, show, clear, or create actions.\n\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
934 return |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
935 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
936 if len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
937 if args[0] != 'save': |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
938 cmd['--name'] = args[0] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
939 elif len(args) > 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
940 cmd['--name'] = args[1] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
941 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
942 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
943 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
944 def status(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
945 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
946 ('', 'ignored', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
947 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
948 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
949 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
950 cmd = Command('status') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
951 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
952 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
953 if opts.get('ignored'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
954 cmd['-i'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
955 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
956 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
957 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
958 def svn(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
959 svncmd = args[0] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
960 if not svncmd in gitsvncommands: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
961 ui.warn(_("error: unknown git svn command %s\n") % (svncmd)) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
962 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
963 args = args[1:] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
964 return gitsvncommands[svncmd](ui, repo, *args, **kwargs) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
965 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
966 def svndcommit(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
967 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
968 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
969 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
970 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
971 cmd = Command('push') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
972 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
973 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
974 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
975 def svnfetch(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
976 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
977 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
978 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
979 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
980 cmd = Command('pull') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
981 cmd.append('default-push') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
982 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
983 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
984 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
985 def svnfindrev(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
986 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
987 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
988 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
989 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
990 cmd = Command('log') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
991 cmd['-r'] = args[0] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
992 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
993 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
994 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
995 def svnrebase(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
996 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
997 ('l', 'local', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
998 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
999 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1000 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1001 pullcmd = Command('pull') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1002 pullcmd.append('default-push') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1003 rebasecmd = Command('rebase') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1004 rebasecmd.append('tip') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1005 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1006 cmd = pullcmd & rebasecmd |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1007 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
1008 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1009 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1010 def tag(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1011 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1012 ('f', 'force', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1013 ('l', 'list', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1014 ('d', 'delete', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1015 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1016 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1017 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1018 if opts.get('list'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1019 cmd = Command('tags') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1020 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1021 cmd = Command('tag') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1022 cmd.append(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1023 if len(args) > 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1024 cmd['-r'] = args[1] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1025 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1026 if opts.get('delete'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1027 cmd['--remove'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1028 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1029 if opts.get('force'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1030 cmd['-f'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1031 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
1032 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1033 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1034 gitcommands = { |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1035 'add': add, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1036 'am': am, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1037 'apply': apply, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1038 'bisect': bisect, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1039 'blame': blame, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1040 'branch': branch, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1041 'checkout': checkout, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1042 'cherry-pick': cherrypick, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1043 'clean': clean, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1044 'clone': clone, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1045 'commit': commit, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1046 'diff': diff, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1047 'difftool': difftool, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1048 'fetch': fetch, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1049 'grep': grep, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1050 'init': init, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1051 'log': log, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1052 'ls-files': lsfiles, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1053 'merge': merge, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1054 'merge-base': mergebase, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1055 'mergetool': mergetool, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1056 'mv': mv, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1057 'pull': pull, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1058 'push': push, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1059 'rebase': rebase, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1060 'reflog': reflog, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1061 'reset': reset, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1062 'revert': revert, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1063 'rev-parse': revparse, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1064 'rm': rm, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1065 'show': show, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1066 'stash': stash, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1067 'status': status, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1068 'svn': svn, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1069 'tag': tag, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1070 'whatchanged': deprecated, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1071 } |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1072 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1073 gitsvncommands = { |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1074 'dcommit': svndcommit, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1075 'fetch': svnfetch, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1076 'find-rev': svnfindrev, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1077 'rebase': svnrebase, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1078 } |