Mercurial > hg
annotate hgext/githelp.py @ 40736:0728d87a8631
store: append to fncache if there are only new files to write
Before this patch, if we have to add a new entry to fncache, we write the whole
fncache again which slows things down on large fncache which have millions of
entries. Addition of a new entry is common operation while pulling new files or
commiting a new file.
This patch adds a new fncache.addls set which keeps track of the additions
happening and store them. When we write the fncache, we will just read the addls
set and append those entries at the end of fncache.
We make sure that the entries are new entries by loading the fncache and making
sure entry does not exists there. In future if we can check if an entry is new
without loading the fncache, that will speed up things more.
Performance numbers for commiting a new file:
mercurial repo
before: 0.08784651756286621
after: 0.08474504947662354
mozilla-central
before: 1.83314049243927
after: 1.7054164409637451
netbeans
before: 0.7953150272369385
after: 0.7202838659286499
pypy
before: 0.17805707454681396
after: 0.13431048393249512
In our internal repo, the performance improvement is in seconds.
I have used octobus's ASV perf benchmark thing to get the above numbers. I also
see some minute perf improvements related to creating a new commit without a new
file, but I believe that's just some noise.
Differential Revision: https://phab.mercurial-scm.org/D5301
author | Pulkit Goyal <pulkit@yandex-team.ru> |
---|---|
date | Fri, 23 Nov 2018 18:58:16 +0300 |
parents | fa88170c10bb |
children | 876494fd967d |
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, |
37388
764ada920db5
githelp: use revsymbol() for looking up symbol
Martin von Zweigbergk <martinvonz@google.com>
parents:
37120
diff
changeset
|
29 scmutil, |
37120
a8a902d7176e
procutil: bulk-replace function calls to point to new module
Yuya Nishihara <yuya@tcha.org>
parents:
36230
diff
changeset
|
30 ) |
a8a902d7176e
procutil: bulk-replace function calls to point to new module
Yuya Nishihara <yuya@tcha.org>
parents:
36230
diff
changeset
|
31 from mercurial.utils import ( |
a8a902d7176e
procutil: bulk-replace function calls to point to new module
Yuya Nishihara <yuya@tcha.org>
parents:
36230
diff
changeset
|
32 procutil, |
35714
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 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
35 # 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
|
36 # extensions which SHIP WITH MERCURIAL. Non-mainline extensions should |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
37 # 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
|
38 # leave the attribute unspecified. |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
39 testedwith = 'ships-with-hg-core' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
40 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
41 cmdtable = {} |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
42 command = registrar.command(cmdtable) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
43 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
44 def convert(s): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
45 if s.startswith("origin/"): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
46 return s[7:] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
47 if 'HEAD' in s: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
48 s = s.replace('HEAD', '.') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
49 # HEAD~ in git is .~1 in mercurial |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
50 s = re.sub('~$', '~1', s) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
51 return s |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
52 |
40295
fa88170c10bb
help: adding a proper declaration for shortlist/basic commands (API)
Rodrigo Damazio <rdamazio@google.com>
parents:
40293
diff
changeset
|
53 @command('githelp|git', [ |
40293
c303d65d2e34
help: assigning categories to existing commands
rdamazio@google.com
parents:
38143
diff
changeset
|
54 ], _('hg githelp'), |
40295
fa88170c10bb
help: adding a proper declaration for shortlist/basic commands (API)
Rodrigo Damazio <rdamazio@google.com>
parents:
40293
diff
changeset
|
55 helpcategory=command.CATEGORY_HELP, helpbasic=True) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
56 def githelp(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
57 '''suggests the Mercurial equivalent of the given 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 Usage: hg githelp -- <git command> |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
60 ''' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
61 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
62 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
|
63 raise error.Abort(_('missing git command - ' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
64 'usage: hg githelp -- <git command>')) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
65 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
66 if args[0] == 'git': |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
67 args = args[1:] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
68 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
69 cmd = args[0] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
70 if not cmd in gitcommands: |
38120
16463278e7f4
githelp: make several strings localizable
Matt Harbison <matt_harbison@yahoo.com>
parents:
38119
diff
changeset
|
71 raise error.Abort(_("error: unknown git command %s") % (cmd)) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
72 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
73 ui.pager('githelp') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
74 args = args[1:] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
75 return gitcommands[cmd](ui, repo, *args, **kwargs) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
76 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
77 def parseoptions(ui, cmdoptions, args): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
78 cmdoptions = list(cmdoptions) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
79 opts = {} |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
80 args = list(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
81 while True: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
82 try: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
83 args = fancyopts.fancyopts(list(args), cmdoptions, opts, True) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
84 break |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
85 except getopt.GetoptError as ex: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
86 flag = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
87 if "requires argument" in ex.msg: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
88 raise |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
89 if ('--' + 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 elif ('-' + ex.opt) in ex.msg: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
92 flag = '-' + ex.opt |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
93 else: |
38120
16463278e7f4
githelp: make several strings localizable
Matt Harbison <matt_harbison@yahoo.com>
parents:
38119
diff
changeset
|
94 raise error.Abort(_("unknown option %s") % ex.opt) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
95 try: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
96 args.remove(flag) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
97 except Exception: |
38143
c3960c7e66fa
py3: replace str.format(x) with `str % x` in githelp
Matt Harbison <matt_harbison@yahoo.com>
parents:
38142
diff
changeset
|
98 msg = _("unknown option '%s' packed with other options") |
c3960c7e66fa
py3: replace str.format(x) with `str % x` in githelp
Matt Harbison <matt_harbison@yahoo.com>
parents:
38142
diff
changeset
|
99 hint = _("please try passing the option as its own flag: -%s") |
c3960c7e66fa
py3: replace str.format(x) with `str % x` in githelp
Matt Harbison <matt_harbison@yahoo.com>
parents:
38142
diff
changeset
|
100 raise error.Abort(msg % ex.opt, hint=hint % ex.opt) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
101 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
102 ui.warn(_("ignoring unknown option %s\n") % flag) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
103 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
104 args = list([convert(x) for x in args]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
105 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
|
106 for k, v in opts.iteritems()]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
107 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
108 return args, opts |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
109 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
110 class Command(object): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
111 def __init__(self, name): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
112 self.name = name |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
113 self.args = [] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
114 self.opts = {} |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
115 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
116 def __bytes__(self): |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
117 cmd = "hg " + self.name |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
118 if self.opts: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
119 for k, values in sorted(self.opts.iteritems()): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
120 for v in values: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
121 if v: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
122 cmd += " %s %s" % (k, v) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
123 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
124 cmd += " %s" % (k,) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
125 if self.args: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
126 cmd += " " |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
127 cmd += " ".join(self.args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
128 return cmd |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
129 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
130 __str__ = encoding.strmethod(__bytes__) |
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
131 |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
132 def append(self, value): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
133 self.args.append(value) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
134 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
135 def extend(self, values): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
136 self.args.extend(values) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
137 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
138 def __setitem__(self, key, value): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
139 values = self.opts.setdefault(key, []) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
140 values.append(value) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
141 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
142 def __and__(self, other): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
143 return AndCommand(self, other) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
144 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
145 class AndCommand(object): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
146 def __init__(self, left, right): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
147 self.left = left |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
148 self.right = right |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
149 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
150 def __str__(self): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
151 return "%s && %s" % (self.left, self.right) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
152 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
153 def __and__(self, other): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
154 return AndCommand(self, other) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
155 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
156 def add(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
157 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
158 ('A', 'all', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
159 ('p', 'patch', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
160 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
161 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
162 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
163 if (opts.get('patch')): |
35715
8dbd000f7de9
githelp: improve help for `git add`
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35714
diff
changeset
|
164 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
|
165 "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
|
166 cmd = Command('commit --interactive') |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
167 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
168 cmd = Command("add") |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
169 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
170 if not opts.get('all'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
171 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
172 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
173 ui.status(_("note: use hg addremove to remove files that have " |
38142
cfa93fbbe9b4
githelp: drop the trailing period from single sentence output for consistency
Matt Harbison <matt_harbison@yahoo.com>
parents:
38130
diff
changeset
|
174 "been deleted\n\n")) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
175 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
176 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
177 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
178 def am(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
179 cmdoptions=[ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
180 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
181 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
|
182 cmd = Command('import') |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
183 ui.status(bytes(cmd), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
184 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
185 def apply(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
186 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
187 ('p', 'p', int, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
188 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
189 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
190 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
191 cmd = Command('import --no-commit') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
192 if (opts.get('p')): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
193 cmd['-p'] = opts.get('p') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
194 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
195 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
196 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
197 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
198 def bisect(ui, repo, *args, **kwargs): |
38142
cfa93fbbe9b4
githelp: drop the trailing period from single sentence output for consistency
Matt Harbison <matt_harbison@yahoo.com>
parents:
38130
diff
changeset
|
199 ui.status(_("see 'hg help bisect' for how to use bisect\n\n")) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
200 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
201 def blame(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
202 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
203 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
204 args, opts = parseoptions(ui, cmdoptions, args) |
35717
5edfead8cc95
githelp: remove reference to tweakdefaults
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35716
diff
changeset
|
205 cmd = Command('annotate -udl') |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
206 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
|
207 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
208 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
209 def branch(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
210 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
211 ('', 'set-upstream', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
212 ('', 'set-upstream-to', '', ''), |
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 ('D', 'delete', 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 ('M', 'move', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
217 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
218 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
219 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
220 cmd = Command("bookmark") |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
221 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
222 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
|
223 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
|
224 return |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
225 elif opts.get('delete'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
226 cmd = Command("strip") |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
227 for branch in args: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
228 cmd['-B'] = branch |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
229 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
230 cmd['-B'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
231 elif opts.get('move'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
232 if len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
233 if len(args) > 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
234 old = args.pop(0) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
235 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
236 # 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
|
237 # revision |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
238 old = '`hg log -T"{activebookmark}" -r .`' |
38118
d8bd6a9c64a5
githelp: fail gracefully in a couple cases where arguments are missing
Matt Harbison <matt_harbison@yahoo.com>
parents:
37388
diff
changeset
|
239 else: |
d8bd6a9c64a5
githelp: fail gracefully in a couple cases where arguments are missing
Matt Harbison <matt_harbison@yahoo.com>
parents:
37388
diff
changeset
|
240 raise error.Abort(_('missing newbranch argument')) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
241 new = args[0] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
242 cmd['-m'] = old |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
243 cmd.append(new) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
244 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
245 if len(args) > 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
246 cmd['-r'] = args[1] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
247 cmd.append(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
248 elif len(args) == 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
249 cmd.append(args[0]) |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
250 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
251 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
252 def ispath(repo, string): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
253 """ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
254 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
|
255 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
|
256 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
|
257 them, so let's be conservative. |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
258 """ |
37388
764ada920db5
githelp: use revsymbol() for looking up symbol
Martin von Zweigbergk <martinvonz@google.com>
parents:
37120
diff
changeset
|
259 if scmutil.isrevsymbol(repo, string): |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
260 # 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
|
261 # same name exists. |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
262 return False |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
263 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
264 cwd = repo.getcwd() |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
265 if cwd == '': |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
266 repopath = string |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
267 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
268 repopath = cwd + '/' + string |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
269 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
270 exists = repo.wvfs.exists(repopath) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
271 if exists: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
272 return True |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
273 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
274 manifest = repo['.'].manifest() |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
275 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
276 didexist = (repopath in manifest) or manifest.hasdir(repopath) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
277 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
278 return didexist |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
279 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
280 def checkout(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
281 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
282 ('b', 'branch', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
283 ('B', 'branch', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
284 ('f', 'force', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
285 ('p', 'patch', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
286 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
287 paths = [] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
288 if '--' in args: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
289 sepindex = args.index('--') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
290 paths.extend(args[sepindex + 1:]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
291 args = args[:sepindex] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
292 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
293 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
294 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
295 rev = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
296 if args and ispath(repo, args[0]): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
297 paths = args + paths |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
298 elif args: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
299 rev = args[0] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
300 paths = args[1:] + paths |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
301 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
302 cmd = Command('update') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
303 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
304 if opts.get('force'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
305 if paths or rev: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
306 cmd['-C'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
307 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
308 if opts.get('patch'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
309 cmd = Command('revert') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
310 cmd['-i'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
311 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
312 if opts.get('branch'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
313 if len(args) == 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
314 cmd = Command('bookmark') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
315 cmd.append(opts.get('branch')) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
316 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
317 cmd.append(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
318 bookcmd = Command('bookmark') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
319 bookcmd.append(opts.get('branch')) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
320 cmd = cmd & bookcmd |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
321 # 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
|
322 elif len(paths) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
323 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
|
324 cmd = Command('revert') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
325 if opts.get('patch'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
326 cmd['-i'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
327 if rev: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
328 cmd['-r'] = rev |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
329 cmd.extend(paths) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
330 elif rev: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
331 if opts.get('patch'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
332 cmd['-r'] = rev |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
333 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
334 cmd.append(rev) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
335 elif opts.get('force'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
336 cmd = Command('revert') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
337 cmd['--all'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
338 else: |
38120
16463278e7f4
githelp: make several strings localizable
Matt Harbison <matt_harbison@yahoo.com>
parents:
38119
diff
changeset
|
339 raise error.Abort(_("a commit must be specified")) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
340 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
341 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
342 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
343 def cherrypick(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
344 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
345 ('', 'continue', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
346 ('', 'abort', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
347 ('e', 'edit', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
348 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
349 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
350 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
351 cmd = Command('graft') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
352 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
353 if opts.get('edit'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
354 cmd['--edit'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
355 if opts.get('continue'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
356 cmd['--continue'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
357 elif opts.get('abort'): |
38142
cfa93fbbe9b4
githelp: drop the trailing period from single sentence output for consistency
Matt Harbison <matt_harbison@yahoo.com>
parents:
38130
diff
changeset
|
358 ui.status(_("note: hg graft does not have --abort\n\n")) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
359 return |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
360 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
361 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
362 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
363 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
364 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
365 def clean(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
366 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
367 ('d', 'd', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
368 ('f', 'force', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
369 ('x', 'x', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
370 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
371 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
372 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
373 cmd = Command('purge') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
374 if opts.get('x'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
375 cmd['--all'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
376 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
377 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
378 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
379 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
380 def clone(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
381 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
382 ('', 'bare', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
383 ('n', 'no-checkout', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
384 ('b', 'branch', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
385 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
386 args, opts = parseoptions(ui, cmdoptions, args) |
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 if len(args) == 0: |
38120
16463278e7f4
githelp: make several strings localizable
Matt Harbison <matt_harbison@yahoo.com>
parents:
38119
diff
changeset
|
389 raise error.Abort(_("a repository to clone must be specified")) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
390 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
391 cmd = Command('clone') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
392 cmd.append(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
393 if len(args) > 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
394 cmd.append(args[1]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
395 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
396 if opts.get('bare'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
397 cmd['-U'] = None |
38129
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
398 ui.status(_("note: Mercurial does not have bare clones. " |
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
399 "-U will clone the repo without checking out a commit\n\n")) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
400 elif opts.get('no_checkout'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
401 cmd['-U'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
402 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
403 if opts.get('branch'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
404 cocmd = Command("update") |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
405 cocmd.append(opts.get('branch')) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
406 cmd = cmd & cocmd |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
407 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
408 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
409 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
410 def commit(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
411 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
412 ('a', 'all', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
413 ('m', 'message', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
414 ('p', 'patch', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
415 ('C', 'reuse-message', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
416 ('F', 'file', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
417 ('', 'author', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
418 ('', 'date', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
419 ('', 'amend', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
420 ('', 'no-edit', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
421 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
422 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
423 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
424 cmd = Command('commit') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
425 if opts.get('patch'): |
35718
a10a0d5561a9
githelp: replace suggestion of `hg record`
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35717
diff
changeset
|
426 cmd = Command('commit --interactive') |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
427 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
428 if opts.get('amend'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
429 if opts.get('no_edit'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
430 cmd = Command('amend') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
431 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
432 cmd['--amend'] = None |
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('reuse_message'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
435 cmd['-M'] = opts.get('reuse_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('message'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
438 cmd['-m'] = "'%s'" % (opts.get('message'),) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
439 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
440 if opts.get('all'): |
38129
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
441 ui.status(_("note: Mercurial doesn't have a staging area, " |
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
442 "so there is no --all. -A will add and remove files " |
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
443 "for you though.\n\n")) |
35714
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('file'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
446 cmd['-l'] = opts.get('file') |
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('author'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
449 cmd['-u'] = opts.get('author') |
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 if opts.get('date'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
452 cmd['-d'] = opts.get('date') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
453 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
454 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
455 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
456 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
457 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
458 def deprecated(ui, repo, *args, **kwargs): |
38129
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
459 ui.warn(_('this command has been deprecated in the git project, ' |
38142
cfa93fbbe9b4
githelp: drop the trailing period from single sentence output for consistency
Matt Harbison <matt_harbison@yahoo.com>
parents:
38130
diff
changeset
|
460 'thus isn\'t supported by this tool\n\n')) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
461 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
462 def diff(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
463 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
464 ('a', 'all', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
465 ('', 'cached', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
466 ('R', 'reverse', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
467 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
468 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
469 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
470 cmd = Command('diff') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
471 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
472 if opts.get('cached'): |
38129
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
473 ui.status(_('note: Mercurial has no concept of a staging area, ' |
38142
cfa93fbbe9b4
githelp: drop the trailing period from single sentence output for consistency
Matt Harbison <matt_harbison@yahoo.com>
parents:
38130
diff
changeset
|
474 'so --cached does nothing\n\n')) |
35714
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 if opts.get('reverse'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
477 cmd['--reverse'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
478 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
479 for a in list(args): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
480 args.remove(a) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
481 try: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
482 repo.revs(a) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
483 cmd['-r'] = a |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
484 except Exception: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
485 cmd.append(a) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
486 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
487 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
488 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
489 def difftool(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
490 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
|
491 '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
|
492 'extdiff =\n' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
493 'to the [extensions] section and then running\n\n' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
494 'hg extdiff -p <program>\n\n' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
495 '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
|
496 'information.\n')) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
497 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
498 def fetch(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
499 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
500 ('', 'all', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
501 ('f', 'force', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
502 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
503 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
504 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
505 cmd = Command('pull') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
506 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
507 if len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
508 cmd.append(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
509 if len(args) > 1: |
38129
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
510 ui.status(_("note: Mercurial doesn't have refspecs. " |
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
511 "-r can be used to specify which commits you want to " |
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
512 "pull. -B can be used to specify which bookmark you " |
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
513 "want to pull.\n\n")) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
514 for v in args[1:]: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
515 if v in repo._bookmarks: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
516 cmd['-B'] = v |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
517 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
518 cmd['-r'] = v |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
519 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
520 ui.status((bytes(cmd)), "\n") |
35714
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 def grep(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
523 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
524 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
525 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
526 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
527 cmd = Command('grep') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
528 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
529 # 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
|
530 # pattern first, followed by paths. |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
531 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
532 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
533 ui.status((bytes(cmd)), "\n") |
35714
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 def init(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
536 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
537 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
538 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
539 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
540 cmd = Command('init') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
541 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
542 if len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
543 cmd.append(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
544 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
545 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
546 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
547 def log(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
548 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
549 ('', 'follow', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
550 ('', 'decorate', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
551 ('n', 'number', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
552 ('1', '1', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
553 ('', 'pretty', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
554 ('', 'format', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
555 ('', 'oneline', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
556 ('', 'stat', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
557 ('', 'graph', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
558 ('p', 'patch', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
559 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
560 args, opts = parseoptions(ui, cmdoptions, args) |
38129
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
561 ui.status(_('note: -v prints the entire commit message like Git does. To ' |
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
562 'print just the first line, drop the -v.\n\n')) |
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
563 ui.status(_("note: see hg help revset for information on how to filter " |
38142
cfa93fbbe9b4
githelp: drop the trailing period from single sentence output for consistency
Matt Harbison <matt_harbison@yahoo.com>
parents:
38130
diff
changeset
|
564 "log output\n\n")) |
35714
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 cmd = Command('log') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
567 cmd['-v'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
568 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
569 if opts.get('number'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
570 cmd['-l'] = opts.get('number') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
571 if opts.get('1'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
572 cmd['-l'] = '1' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
573 if opts.get('stat'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
574 cmd['--stat'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
575 if opts.get('graph'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
576 cmd['-G'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
577 if opts.get('patch'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
578 cmd['-p'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
579 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
580 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
|
581 format = opts.get('format', '') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
582 if 'format:' in format: |
38129
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
583 ui.status(_("note: --format format:??? equates to Mercurial's " |
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
584 "--template. See hg help templates for more info.\n\n")) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
585 cmd['--template'] = '???' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
586 else: |
38129
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
587 ui.status(_("note: --pretty/format/oneline equate to Mercurial's " |
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
588 "--style or --template. See hg help templates for " |
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
589 "more info.\n\n")) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
590 cmd['--style'] = '???' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
591 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
592 if len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
593 if '..' in args[0]: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
594 since, until = args[0].split('..') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
595 cmd['-r'] = "'%s::%s'" % (since, until) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
596 del args[0] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
597 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
598 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
599 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
600 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
601 def lsfiles(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
602 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
603 ('c', 'cached', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
604 ('d', 'deleted', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
605 ('m', 'modified', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
606 ('o', 'others', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
607 ('i', 'ignored', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
608 ('s', 'stage', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
609 ('z', '_zero', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
610 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
611 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
612 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
613 if (opts.get('modified') or opts.get('deleted') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
614 or opts.get('others') or opts.get('ignored')): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
615 cmd = Command('status') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
616 if opts.get('deleted'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
617 cmd['-d'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
618 if opts.get('modified'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
619 cmd['-m'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
620 if opts.get('others'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
621 cmd['-o'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
622 if opts.get('ignored'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
623 cmd['-i'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
624 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
625 cmd = Command('files') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
626 if opts.get('stage'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
627 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
|
628 "--stage\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
629 if opts.get('_zero'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
630 cmd['-0'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
631 cmd.append('.') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
632 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
|
633 cmd['-I'] = procutil.shellquote(include) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
634 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
635 ui.status((bytes(cmd)), "\n") |
35714
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 def merge(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
638 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
639 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
640 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
641 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
642 cmd = Command('merge') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
643 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
644 if len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
645 cmd.append(args[len(args) - 1]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
646 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
647 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
648 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
649 def mergebase(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
650 cmdoptions = [] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
651 args, opts = parseoptions(ui, cmdoptions, args) |
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 if len(args) != 2: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
654 args = ['A', 'B'] |
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 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
|
657 % (args[0], args[1])) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
658 |
38142
cfa93fbbe9b4
githelp: drop the trailing period from single sentence output for consistency
Matt Harbison <matt_harbison@yahoo.com>
parents:
38130
diff
changeset
|
659 ui.status(_('note: ancestors() is part of the revset language\n'), |
38122
26b73fad45d9
githelp: lowercase the start of output messages for consistency
Matt Harbison <matt_harbison@yahoo.com>
parents:
38121
diff
changeset
|
660 _("(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
|
661 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
662 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
663 def mergetool(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
664 cmdoptions = [] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
665 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
666 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
667 cmd = Command("resolve") |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
668 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
669 if len(args) == 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
670 cmd['--all'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
671 cmd.extend(args) |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
672 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
673 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
674 def mv(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
675 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
676 ('f', 'force', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
677 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
678 args, opts = parseoptions(ui, cmdoptions, 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 cmd = Command('mv') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
681 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
682 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
683 if opts.get('force'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
684 cmd['-f'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
685 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
686 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
687 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
688 def pull(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
689 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
690 ('', 'all', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
691 ('f', 'force', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
692 ('r', 'rebase', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
693 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
694 args, opts = parseoptions(ui, cmdoptions, args) |
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 cmd = Command('pull') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
697 cmd['--rebase'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
698 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
699 if len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
700 cmd.append(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
701 if len(args) > 1: |
38129
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
702 ui.status(_("note: Mercurial doesn't have refspecs. " |
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
703 "-r can be used to specify which commits you want to " |
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
704 "pull. -B can be used to specify which bookmark you " |
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
705 "want to pull.\n\n")) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
706 for v in args[1:]: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
707 if v in repo._bookmarks: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
708 cmd['-B'] = v |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
709 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
710 cmd['-r'] = v |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
711 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
712 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
713 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
714 def push(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
715 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
716 ('', 'all', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
717 ('f', 'force', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
718 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
719 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
720 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
721 cmd = Command('push') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
722 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
723 if len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
724 cmd.append(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
725 if len(args) > 1: |
38129
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
726 ui.status(_("note: Mercurial doesn't have refspecs. " |
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
727 "-r can be used to specify which commits you want " |
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
728 "to push. -B can be used to specify which bookmark " |
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
729 "you want to push.\n\n")) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
730 for v in args[1:]: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
731 if v in repo._bookmarks: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
732 cmd['-B'] = v |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
733 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
734 cmd['-r'] = v |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
735 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
736 if opts.get('force'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
737 cmd['-f'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
738 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
739 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
740 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
741 def rebase(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
742 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
743 ('', 'all', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
744 ('i', 'interactive', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
745 ('', 'onto', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
746 ('', 'abort', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
747 ('', 'continue', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
748 ('', 'skip', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
749 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
750 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
751 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
752 if opts.get('interactive'): |
38129
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
753 ui.status(_("note: hg histedit does not perform a rebase. " |
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
754 "It just edits history.\n\n")) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
755 cmd = Command('histedit') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
756 if len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
757 ui.status(_("also note: 'hg histedit' will automatically detect" |
38142
cfa93fbbe9b4
githelp: drop the trailing period from single sentence output for consistency
Matt Harbison <matt_harbison@yahoo.com>
parents:
38130
diff
changeset
|
758 " 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
|
759 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
760 return |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
761 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
762 if opts.get('skip'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
763 cmd = Command('revert --all -r .') |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
764 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
765 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
766 cmd = Command('rebase') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
767 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
768 if opts.get('continue') or opts.get('skip'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
769 cmd['--continue'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
770 if opts.get('abort'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
771 cmd['--abort'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
772 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
773 if opts.get('onto'): |
38129
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
774 ui.status(_("note: if you're trying to lift a commit off one branch, " |
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
775 "try hg rebase -d <destination commit> -s <commit to be " |
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
776 "lifted>\n\n")) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
777 cmd['-d'] = convert(opts.get('onto')) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
778 if len(args) < 2: |
38122
26b73fad45d9
githelp: lowercase the start of output messages for consistency
Matt Harbison <matt_harbison@yahoo.com>
parents:
38121
diff
changeset
|
779 raise error.Abort(_("expected format: git rebase --onto X Y Z")) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
780 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
|
781 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
782 if len(args) == 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
783 cmd['-d'] = convert(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
784 elif len(args) == 2: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
785 cmd['-d'] = convert(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
786 cmd['-b'] = convert(args[1]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
787 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
788 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
789 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
790 def reflog(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
791 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
792 ('', 'all', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
793 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
794 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
795 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
796 cmd = Command('journal') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
797 if opts.get('all'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
798 cmd['--all'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
799 if len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
800 cmd.append(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
801 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
802 ui.status(bytes(cmd), "\n\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
803 ui.status(_("note: in hg commits can be deleted from repo but we always" |
38142
cfa93fbbe9b4
githelp: drop the trailing period from single sentence output for consistency
Matt Harbison <matt_harbison@yahoo.com>
parents:
38130
diff
changeset
|
804 " have backups\n")) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
805 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
806 def reset(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
807 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
808 ('', 'soft', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
809 ('', 'hard', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
810 ('', 'mixed', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
811 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
812 args, opts = parseoptions(ui, cmdoptions, args) |
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 commit = convert(args[0] if len(args) > 0 else '.') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
815 hard = opts.get('hard') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
816 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
817 if opts.get('mixed'): |
38122
26b73fad45d9
githelp: lowercase the start of output messages for consistency
Matt Harbison <matt_harbison@yahoo.com>
parents:
38121
diff
changeset
|
818 ui.status(_('note: --mixed has no meaning since Mercurial has no ' |
35720
b3cf58487731
githelp: improve help for "reset"
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35719
diff
changeset
|
819 'staging area\n\n')) |
b3cf58487731
githelp: improve help for "reset"
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35719
diff
changeset
|
820 if opts.get('soft'): |
38122
26b73fad45d9
githelp: lowercase the start of output messages for consistency
Matt Harbison <matt_harbison@yahoo.com>
parents:
38121
diff
changeset
|
821 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
|
822 'staging area\n\n')) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
823 |
35720
b3cf58487731
githelp: improve help for "reset"
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35719
diff
changeset
|
824 cmd = Command('update') |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
825 if hard: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
826 cmd.append('--clean') |
35720
b3cf58487731
githelp: improve help for "reset"
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35719
diff
changeset
|
827 |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
828 cmd.append(commit) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
829 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
830 ui.status((bytes(cmd)), "\n") |
35714
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 def revert(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
833 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
834 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
835 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
836 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
837 if len(args) > 1: |
38129
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
838 ui.status(_("note: hg backout doesn't support multiple commits at " |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
839 "once\n\n")) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
840 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
841 cmd = Command('backout') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
842 if args: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
843 cmd.append(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
844 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
845 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
846 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
847 def revparse(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
848 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
849 ('', 'show-cdup', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
850 ('', 'show-toplevel', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
851 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
852 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
853 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
854 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
|
855 cmd = Command('root') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
856 if opts.get('show_cdup'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
857 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
|
858 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
859 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
860 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
|
861 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
862 def rm(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
863 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
864 ('f', 'force', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
865 ('n', 'dry-run', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
866 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
867 args, opts = parseoptions(ui, cmdoptions, 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 cmd = Command('rm') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
870 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
871 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
872 if opts.get('force'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
873 cmd['-f'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
874 if opts.get('dry_run'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
875 cmd['-n'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
876 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
877 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
878 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
879 def show(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
880 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
881 ('', 'name-status', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
882 ('', 'pretty', '', ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
883 ('U', 'unified', int, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
884 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
885 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
886 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
887 if opts.get('name_status'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
888 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
|
889 cmd = Command('status') |
f50067fbeead
githelp: don't reference 3rd party commands for `git show`
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35720
diff
changeset
|
890 cmd['--change'] = '.' |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
891 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
892 cmd = Command('log') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
893 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
|
894 cmd.append('-r .') |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
895 elif len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
896 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
|
897 cmd = Command('cat') |
f50067fbeead
githelp: don't reference 3rd party commands for `git show`
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35720
diff
changeset
|
898 else: |
f50067fbeead
githelp: don't reference 3rd party commands for `git show`
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35720
diff
changeset
|
899 cmd = Command('export') |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
900 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
901 if opts.get('unified'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
902 cmd.append('--config diff.unified=%d' % (opts['unified'],)) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
903 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
|
904 cmd = Command('export') |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
905 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
|
906 else: |
f50067fbeead
githelp: don't reference 3rd party commands for `git show`
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35720
diff
changeset
|
907 cmd = Command('export') |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
908 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
909 ui.status((bytes(cmd)), "\n") |
35714
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 def stash(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
912 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
913 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
914 args, opts = parseoptions(ui, cmdoptions, args) |
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 cmd = Command('shelve') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
917 action = args[0] if len(args) > 0 else None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
918 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
919 if action == 'list': |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
920 cmd['-l'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
921 elif action == 'drop': |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
922 cmd['-d'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
923 if len(args) > 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
924 cmd.append(args[1]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
925 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
926 cmd.append('<shelve name>') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
927 elif action == 'pop' or action == 'apply': |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
928 cmd = Command('unshelve') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
929 if len(args) > 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
930 cmd.append(args[1]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
931 if action == 'apply': |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
932 cmd['--keep'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
933 elif (action == 'branch' or action == 'show' or action == 'clear' |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
934 or action == 'create'): |
38129
c65931d23baf
githelp: do not concatenate i18n messages dynamically so they can be collected
Yuya Nishihara <yuya@tcha.org>
parents:
38122
diff
changeset
|
935 ui.status(_("note: Mercurial doesn't have equivalents to the " |
38142
cfa93fbbe9b4
githelp: drop the trailing period from single sentence output for consistency
Matt Harbison <matt_harbison@yahoo.com>
parents:
38130
diff
changeset
|
936 "git stash branch, show, clear, or create actions\n\n")) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
937 return |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
938 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
939 if len(args) > 0: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
940 if args[0] != 'save': |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
941 cmd['--name'] = args[0] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
942 elif len(args) > 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
943 cmd['--name'] = args[1] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
944 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
945 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
946 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
947 def status(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
948 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
949 ('', 'ignored', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
950 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
951 args, opts = parseoptions(ui, cmdoptions, 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 cmd = Command('status') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
954 cmd.extend(args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
955 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
956 if opts.get('ignored'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
957 cmd['-i'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
958 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
959 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
960 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
961 def svn(ui, repo, *args, **kwargs): |
38118
d8bd6a9c64a5
githelp: fail gracefully in a couple cases where arguments are missing
Matt Harbison <matt_harbison@yahoo.com>
parents:
37388
diff
changeset
|
962 if not args: |
d8bd6a9c64a5
githelp: fail gracefully in a couple cases where arguments are missing
Matt Harbison <matt_harbison@yahoo.com>
parents:
37388
diff
changeset
|
963 raise error.Abort(_('missing svn command')) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
964 svncmd = args[0] |
38121
10befe8e8b59
githelp: rewrite a Yoda conditional
Matt Harbison <matt_harbison@yahoo.com>
parents:
38120
diff
changeset
|
965 if svncmd not in gitsvncommands: |
38119
ee96458afdb6
githelp: cleanly abort if the `svn` command is unknown
Matt Harbison <matt_harbison@yahoo.com>
parents:
38118
diff
changeset
|
966 raise error.Abort(_('unknown git svn command "%s"') % (svncmd)) |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
967 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
968 args = args[1:] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
969 return gitsvncommands[svncmd](ui, repo, *args, **kwargs) |
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 def svndcommit(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
972 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
973 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
974 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
975 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
976 cmd = Command('push') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
977 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
978 ui.status((bytes(cmd)), "\n") |
35714
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 def svnfetch(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
981 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
982 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
983 args, opts = parseoptions(ui, cmdoptions, args) |
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 cmd = Command('pull') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
986 cmd.append('default-push') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
987 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
988 ui.status((bytes(cmd)), "\n") |
35714
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 def svnfindrev(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
991 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
992 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
993 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
994 |
38118
d8bd6a9c64a5
githelp: fail gracefully in a couple cases where arguments are missing
Matt Harbison <matt_harbison@yahoo.com>
parents:
37388
diff
changeset
|
995 if not args: |
d8bd6a9c64a5
githelp: fail gracefully in a couple cases where arguments are missing
Matt Harbison <matt_harbison@yahoo.com>
parents:
37388
diff
changeset
|
996 raise error.Abort(_('missing find-rev argument')) |
d8bd6a9c64a5
githelp: fail gracefully in a couple cases where arguments are missing
Matt Harbison <matt_harbison@yahoo.com>
parents:
37388
diff
changeset
|
997 |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
998 cmd = Command('log') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
999 cmd['-r'] = args[0] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1000 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
1001 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1002 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1003 def svnrebase(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1004 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1005 ('l', 'local', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1006 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1007 args, opts = parseoptions(ui, cmdoptions, args) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1008 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1009 pullcmd = Command('pull') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1010 pullcmd.append('default-push') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1011 rebasecmd = Command('rebase') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1012 rebasecmd.append('tip') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1013 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1014 cmd = pullcmd & rebasecmd |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1015 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
1016 ui.status((bytes(cmd)), "\n") |
35714
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 def tag(ui, repo, *args, **kwargs): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1019 cmdoptions = [ |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1020 ('f', 'force', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1021 ('l', 'list', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1022 ('d', 'delete', None, ''), |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1023 ] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1024 args, opts = parseoptions(ui, cmdoptions, args) |
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('list'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1027 cmd = Command('tags') |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1028 else: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1029 cmd = Command('tag') |
38118
d8bd6a9c64a5
githelp: fail gracefully in a couple cases where arguments are missing
Matt Harbison <matt_harbison@yahoo.com>
parents:
37388
diff
changeset
|
1030 |
d8bd6a9c64a5
githelp: fail gracefully in a couple cases where arguments are missing
Matt Harbison <matt_harbison@yahoo.com>
parents:
37388
diff
changeset
|
1031 if not args: |
d8bd6a9c64a5
githelp: fail gracefully in a couple cases where arguments are missing
Matt Harbison <matt_harbison@yahoo.com>
parents:
37388
diff
changeset
|
1032 raise error.Abort(_('missing tag argument')) |
d8bd6a9c64a5
githelp: fail gracefully in a couple cases where arguments are missing
Matt Harbison <matt_harbison@yahoo.com>
parents:
37388
diff
changeset
|
1033 |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1034 cmd.append(args[0]) |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1035 if len(args) > 1: |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1036 cmd['-r'] = args[1] |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1037 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1038 if opts.get('delete'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1039 cmd['--remove'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1040 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1041 if opts.get('force'): |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1042 cmd['-f'] = None |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1043 |
36230
257f3651ada9
githelp: cast commands to bytes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35721
diff
changeset
|
1044 ui.status((bytes(cmd)), "\n") |
35714
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1045 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1046 gitcommands = { |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1047 'add': add, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1048 'am': am, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1049 'apply': apply, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1050 'bisect': bisect, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1051 'blame': blame, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1052 'branch': branch, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1053 'checkout': checkout, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1054 'cherry-pick': cherrypick, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1055 'clean': clean, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1056 'clone': clone, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1057 'commit': commit, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1058 'diff': diff, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1059 'difftool': difftool, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1060 'fetch': fetch, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1061 'grep': grep, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1062 'init': init, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1063 'log': log, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1064 'ls-files': lsfiles, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1065 'merge': merge, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1066 'merge-base': mergebase, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1067 'mergetool': mergetool, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1068 'mv': mv, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1069 'pull': pull, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1070 'push': push, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1071 'rebase': rebase, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1072 'reflog': reflog, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1073 'reset': reset, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1074 'revert': revert, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1075 'rev-parse': revparse, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1076 'rm': rm, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1077 'show': show, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1078 'stash': stash, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1079 'status': status, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1080 'svn': svn, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1081 'tag': tag, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1082 'whatchanged': deprecated, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1083 } |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1084 |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1085 gitsvncommands = { |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1086 'dcommit': svndcommit, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1087 'fetch': svnfetch, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1088 'find-rev': svnfindrev, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1089 'rebase': svnrebase, |
113281667205
githelp: vendor Facebook authored extension
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1090 } |