Mercurial > public > mercurial-scm > hg
comparison mercurial/commands.py @ 40295:fa88170c10bb
help: adding a proper declaration for shortlist/basic commands (API)
We previously used the '^' prefix to indicate that a command
should be shown on the short list (shown for just "hg"), but
that's a horrible hack, so I'm removing it.
Differential Revision: https://phab.mercurial-scm.org/D5069
author | Rodrigo Damazio <rdamazio@google.com> |
---|---|
date | Fri, 12 Oct 2018 18:49:11 +0200 |
parents | c303d65d2e34 |
children | 943248e47864 |
comparison
equal
deleted
inserted
replaced
40294:fabbf9310025 | 40295:fa88170c10bb |
---|---|
129 subrepoopts = cmdutil.subrepoopts | 129 subrepoopts = cmdutil.subrepoopts |
130 debugrevlogopts = cmdutil.debugrevlogopts | 130 debugrevlogopts = cmdutil.debugrevlogopts |
131 | 131 |
132 # Commands start here, listed alphabetically | 132 # Commands start here, listed alphabetically |
133 | 133 |
134 @command('^add', | 134 @command('add', |
135 walkopts + subrepoopts + dryrunopts, | 135 walkopts + subrepoopts + dryrunopts, |
136 _('[OPTION]... [FILE]...'), | 136 _('[OPTION]... [FILE]...'), |
137 helpcategory=command.CATEGORY_WORKING_DIRECTORY, | 137 helpcategory=command.CATEGORY_WORKING_DIRECTORY, |
138 inferrepo=True) | 138 helpbasic=True, inferrepo=True) |
139 def add(ui, repo, *pats, **opts): | 139 def add(ui, repo, *pats, **opts): |
140 """add the specified files on the next commit | 140 """add the specified files on the next commit |
141 | 141 |
142 Schedule files to be version controlled and added to the | 142 Schedule files to be version controlled and added to the |
143 repository. | 143 repository. |
254 if not opts.get('similarity'): | 254 if not opts.get('similarity'): |
255 opts['similarity'] = '100' | 255 opts['similarity'] = '100' |
256 matcher = scmutil.match(repo[None], pats, opts) | 256 matcher = scmutil.match(repo[None], pats, opts) |
257 return scmutil.addremove(repo, matcher, "", opts) | 257 return scmutil.addremove(repo, matcher, "", opts) |
258 | 258 |
259 @command('^annotate|blame', | 259 @command('annotate|blame', |
260 [('r', 'rev', '', _('annotate the specified revision'), _('REV')), | 260 [('r', 'rev', '', _('annotate the specified revision'), _('REV')), |
261 ('', 'follow', None, | 261 ('', 'follow', None, |
262 _('follow copies/renames and list the filename (DEPRECATED)')), | 262 _('follow copies/renames and list the filename (DEPRECATED)')), |
263 ('', 'no-follow', None, _("don't follow copies and renames")), | 263 ('', 'no-follow', None, _("don't follow copies and renames")), |
264 ('a', 'text', None, _('treat all files as text')), | 264 ('a', 'text', None, _('treat all files as text')), |
270 ('l', 'line-number', None, _('show line number at the first appearance')), | 270 ('l', 'line-number', None, _('show line number at the first appearance')), |
271 ('', 'skip', [], _('revision to not display (EXPERIMENTAL)'), _('REV')), | 271 ('', 'skip', [], _('revision to not display (EXPERIMENTAL)'), _('REV')), |
272 ] + diffwsopts + walkopts + formatteropts, | 272 ] + diffwsopts + walkopts + formatteropts, |
273 _('[-r REV] [-f] [-a] [-u] [-d] [-n] [-c] [-l] FILE...'), | 273 _('[-r REV] [-f] [-a] [-u] [-d] [-n] [-c] [-l] FILE...'), |
274 helpcategory=command.CATEGORY_FILE_CONTENTS, | 274 helpcategory=command.CATEGORY_FILE_CONTENTS, |
275 inferrepo=True) | 275 helpbasic=True, inferrepo=True) |
276 def annotate(ui, repo, *pats, **opts): | 276 def annotate(ui, repo, *pats, **opts): |
277 """show changeset information by line for each file | 277 """show changeset information by line for each file |
278 | 278 |
279 List changes in files, showing the revision id responsible for | 279 List changes in files, showing the revision id responsible for |
280 each line. | 280 each line. |
1397 fm = ui.formatter('cat', opts) | 1397 fm = ui.formatter('cat', opts) |
1398 with fm: | 1398 with fm: |
1399 return cmdutil.cat(ui, repo, ctx, m, fm, fntemplate, '', | 1399 return cmdutil.cat(ui, repo, ctx, m, fm, fntemplate, '', |
1400 **pycompat.strkwargs(opts)) | 1400 **pycompat.strkwargs(opts)) |
1401 | 1401 |
1402 @command('^clone', | 1402 @command('clone', |
1403 [('U', 'noupdate', None, _('the clone will include an empty working ' | 1403 [('U', 'noupdate', None, _('the clone will include an empty working ' |
1404 'directory (only a repository)')), | 1404 'directory (only a repository)')), |
1405 ('u', 'updaterev', '', _('revision, tag, or branch to check out'), | 1405 ('u', 'updaterev', '', _('revision, tag, or branch to check out'), |
1406 _('REV')), | 1406 _('REV')), |
1407 ('r', 'rev', [], _('do not clone everything, but include this changeset' | 1407 ('r', 'rev', [], _('do not clone everything, but include this changeset' |
1414 ('', 'stream', None, | 1414 ('', 'stream', None, |
1415 _('clone with minimal data processing')), | 1415 _('clone with minimal data processing')), |
1416 ] + remoteopts, | 1416 ] + remoteopts, |
1417 _('[OPTION]... SOURCE [DEST]'), | 1417 _('[OPTION]... SOURCE [DEST]'), |
1418 helpcategory=command.CATEGORY_REPO_CREATION, | 1418 helpcategory=command.CATEGORY_REPO_CREATION, |
1419 norepo=True) | 1419 helpbasic=True, norepo=True) |
1420 def clone(ui, source, dest=None, **opts): | 1420 def clone(ui, source, dest=None, **opts): |
1421 """make a copy of an existing repository | 1421 """make a copy of an existing repository |
1422 | 1422 |
1423 Create a copy of an existing repository in a new directory. | 1423 Create a copy of an existing repository in a new directory. |
1424 | 1424 |
1553 storeincludepats=includepats, | 1553 storeincludepats=includepats, |
1554 storeexcludepats=excludepats) | 1554 storeexcludepats=excludepats) |
1555 | 1555 |
1556 return r is None | 1556 return r is None |
1557 | 1557 |
1558 @command('^commit|ci', | 1558 @command('commit|ci', |
1559 [('A', 'addremove', None, | 1559 [('A', 'addremove', None, |
1560 _('mark new/missing files as added/removed before committing')), | 1560 _('mark new/missing files as added/removed before committing')), |
1561 ('', 'close-branch', None, | 1561 ('', 'close-branch', None, |
1562 _('mark a branch head as closed')), | 1562 _('mark a branch head as closed')), |
1563 ('', 'amend', None, _('amend the parent of the working directory')), | 1563 ('', 'amend', None, _('amend the parent of the working directory')), |
1564 ('s', 'secret', None, _('use the secret phase for committing')), | 1564 ('s', 'secret', None, _('use the secret phase for committing')), |
1565 ('e', 'edit', None, _('invoke editor on commit messages')), | 1565 ('e', 'edit', None, _('invoke editor on commit messages')), |
1566 ('i', 'interactive', None, _('use interactive mode')), | 1566 ('i', 'interactive', None, _('use interactive mode')), |
1567 ] + walkopts + commitopts + commitopts2 + subrepoopts, | 1567 ] + walkopts + commitopts + commitopts2 + subrepoopts, |
1568 _('[OPTION]... [FILE]...'), | 1568 _('[OPTION]... [FILE]...'), |
1569 helpcategory=command.CATEGORY_COMMITTING, | 1569 helpcategory=command.CATEGORY_COMMITTING, helpbasic=True, |
1570 inferrepo=True) | 1570 inferrepo=True) |
1571 def commit(ui, repo, *pats, **opts): | 1571 def commit(ui, repo, *pats, **opts): |
1572 """commit the specified files or all outstanding changes | 1572 """commit the specified files or all outstanding changes |
1573 | 1573 |
1574 Commit changes to the given files into the repository. Unlike a | 1574 Commit changes to the given files into the repository. Unlike a |
1865 helpcategory=command.CATEGORY_HELP, | 1865 helpcategory=command.CATEGORY_HELP, |
1866 norepo=True) | 1866 norepo=True) |
1867 def debugcommands(ui, cmd='', *args): | 1867 def debugcommands(ui, cmd='', *args): |
1868 """list all available commands and options""" | 1868 """list all available commands and options""" |
1869 for cmd, vals in sorted(table.iteritems()): | 1869 for cmd, vals in sorted(table.iteritems()): |
1870 cmd = cmd.split('|')[0].strip('^') | 1870 cmd = cmd.split('|')[0] |
1871 opts = ', '.join([i[1] for i in vals[1]]) | 1871 opts = ', '.join([i[1] for i in vals[1]]) |
1872 ui.write('%s: %s\n' % (cmd, opts)) | 1872 ui.write('%s: %s\n' % (cmd, opts)) |
1873 | 1873 |
1874 @command('debugcomplete', | 1874 @command('debugcomplete', |
1875 [('o', 'options', None, _('show the command options'))], | 1875 [('o', 'options', None, _('show the command options'))], |
1898 cmdlist, unused_allcmds = cmdutil.findpossible(cmd, table) | 1898 cmdlist, unused_allcmds = cmdutil.findpossible(cmd, table) |
1899 if ui.verbose: | 1899 if ui.verbose: |
1900 cmdlist = [' '.join(c[0]) for c in cmdlist.values()] | 1900 cmdlist = [' '.join(c[0]) for c in cmdlist.values()] |
1901 ui.write("%s\n" % "\n".join(sorted(cmdlist))) | 1901 ui.write("%s\n" % "\n".join(sorted(cmdlist))) |
1902 | 1902 |
1903 @command('^diff', | 1903 @command('diff', |
1904 [('r', 'rev', [], _('revision'), _('REV')), | 1904 [('r', 'rev', [], _('revision'), _('REV')), |
1905 ('c', 'change', '', _('change made by revision'), _('REV')) | 1905 ('c', 'change', '', _('change made by revision'), _('REV')) |
1906 ] + diffopts + diffopts2 + walkopts + subrepoopts, | 1906 ] + diffopts + diffopts2 + walkopts + subrepoopts, |
1907 _('[OPTION]... ([-c REV] | [-r REV1 [-r REV2]]) [FILE]...'), | 1907 _('[OPTION]... ([-c REV] | [-r REV1 [-r REV2]]) [FILE]...'), |
1908 helpcategory=command.CATEGORY_FILE_CONTENTS, | 1908 helpcategory=command.CATEGORY_FILE_CONTENTS, |
1909 inferrepo=True, | 1909 helpbasic=True, inferrepo=True, intents={INTENT_READONLY}) |
1910 intents={INTENT_READONLY}) | |
1911 def diff(ui, repo, *pats, **opts): | 1910 def diff(ui, repo, *pats, **opts): |
1912 """diff repository (or selected files) | 1911 """diff repository (or selected files) |
1913 | 1912 |
1914 Show differences between revisions for the specified files. | 1913 Show differences between revisions for the specified files. |
1915 | 1914 |
1993 ui.pager('diff') | 1992 ui.pager('diff') |
1994 logcmdutil.diffordiffstat(ui, repo, diffopts, node1, node2, m, stat=stat, | 1993 logcmdutil.diffordiffstat(ui, repo, diffopts, node1, node2, m, stat=stat, |
1995 listsubrepos=opts.get('subrepos'), | 1994 listsubrepos=opts.get('subrepos'), |
1996 root=opts.get('root')) | 1995 root=opts.get('root')) |
1997 | 1996 |
1998 @command('^export', | 1997 @command('export', |
1999 [('B', 'bookmark', '', | 1998 [('B', 'bookmark', '', |
2000 _('export changes only reachable by given bookmark')), | 1999 _('export changes only reachable by given bookmark')), |
2001 ('o', 'output', '', | 2000 ('o', 'output', '', |
2002 _('print output to file with formatted name'), _('FORMAT')), | 2001 _('print output to file with formatted name'), _('FORMAT')), |
2003 ('', 'switch-parent', None, _('diff against the second parent')), | 2002 ('', 'switch-parent', None, _('diff against the second parent')), |
2004 ('r', 'rev', [], _('revisions to export'), _('REV')), | 2003 ('r', 'rev', [], _('revisions to export'), _('REV')), |
2005 ] + diffopts + formatteropts, | 2004 ] + diffopts + formatteropts, |
2006 _('[OPTION]... [-o OUTFILESPEC] [-r] [REV]...'), | 2005 _('[OPTION]... [-o OUTFILESPEC] [-r] [REV]...'), |
2007 helpcategory=command.CATEGORY_IMPORT_EXPORT, | 2006 helpcategory=command.CATEGORY_IMPORT_EXPORT, |
2008 intents={INTENT_READONLY}) | 2007 helpbasic=True, intents={INTENT_READONLY}) |
2009 def export(ui, repo, *changesets, **opts): | 2008 def export(ui, repo, *changesets, **opts): |
2010 """dump the header and diffs for one or more changesets | 2009 """dump the header and diffs for one or more changesets |
2011 | 2010 |
2012 Print the changeset header and diffs for one or more revisions. | 2011 Print the changeset header and diffs for one or more revisions. |
2013 If no revision is given, the parent of the working directory is used. | 2012 If no revision is given, the parent of the working directory is used. |
2196 ui.pager('files') | 2195 ui.pager('files') |
2197 with ui.formatter('files', opts) as fm: | 2196 with ui.formatter('files', opts) as fm: |
2198 return cmdutil.files(ui, ctx, m, fm, fmt, opts.get('subrepos')) | 2197 return cmdutil.files(ui, ctx, m, fm, fmt, opts.get('subrepos')) |
2199 | 2198 |
2200 @command( | 2199 @command( |
2201 '^forget', | 2200 'forget', |
2202 [('i', 'interactive', None, _('use interactive mode')), | 2201 [('i', 'interactive', None, _('use interactive mode')), |
2203 ] + walkopts + dryrunopts, | 2202 ] + walkopts + dryrunopts, |
2204 _('[OPTION]... FILE...'), | 2203 _('[OPTION]... FILE...'), |
2205 helpcategory=command.CATEGORY_WORKING_DIRECTORY, | 2204 helpcategory=command.CATEGORY_WORKING_DIRECTORY, |
2206 inferrepo=True) | 2205 helpbasic=True, inferrepo=True) |
2207 def forget(ui, repo, *pats, **opts): | 2206 def forget(ui, repo, *pats, **opts): |
2208 """forget the specified files on the next commit | 2207 """forget the specified files on the next commit |
2209 | 2208 |
2210 Mark the specified files so they will no longer be tracked | 2209 Mark the specified files so they will no longer be tracked |
2211 after the next commit. | 2210 after the next commit. |
3547 return hg.incoming(ui, repo, source, opts) | 3546 return hg.incoming(ui, repo, source, opts) |
3548 finally: | 3547 finally: |
3549 del repo._subtoppath | 3548 del repo._subtoppath |
3550 | 3549 |
3551 | 3550 |
3552 @command('^init', remoteopts, _('[-e CMD] [--remotecmd CMD] [DEST]'), | 3551 @command('init', remoteopts, _('[-e CMD] [--remotecmd CMD] [DEST]'), |
3553 helpcategory=command.CATEGORY_REPO_CREATION, | 3552 helpcategory=command.CATEGORY_REPO_CREATION, |
3554 norepo=True) | 3553 helpbasic=True, norepo=True) |
3555 def init(ui, dest=".", **opts): | 3554 def init(ui, dest=".", **opts): |
3556 """create a new repository in the given directory | 3555 """create a new repository in the given directory |
3557 | 3556 |
3558 Initialize a new repository in the given directory. If the given | 3557 Initialize a new repository in the given directory. If the given |
3559 directory does not exist, it will be created. | 3558 directory does not exist, it will be created. |
3622 ui.write(((pats and m.rel(abs)) or abs), end) | 3621 ui.write(((pats and m.rel(abs)) or abs), end) |
3623 ret = 0 | 3622 ret = 0 |
3624 | 3623 |
3625 return ret | 3624 return ret |
3626 | 3625 |
3627 @command('^log|history', | 3626 @command('log|history', |
3628 [('f', 'follow', None, | 3627 [('f', 'follow', None, |
3629 _('follow changeset history, or file history across copies and renames')), | 3628 _('follow changeset history, or file history across copies and renames')), |
3630 ('', 'follow-first', None, | 3629 ('', 'follow-first', None, |
3631 _('only follow the first parent of merge changesets (DEPRECATED)')), | 3630 _('only follow the first parent of merge changesets (DEPRECATED)')), |
3632 ('d', 'date', '', _('show revisions matching date spec'), _('DATE')), | 3631 ('d', 'date', '', _('show revisions matching date spec'), _('DATE')), |
3648 ('P', 'prune', [], | 3647 ('P', 'prune', [], |
3649 _('do not display revision or any of its ancestors'), _('REV')), | 3648 _('do not display revision or any of its ancestors'), _('REV')), |
3650 ] + logopts + walkopts, | 3649 ] + logopts + walkopts, |
3651 _('[OPTION]... [FILE]'), | 3650 _('[OPTION]... [FILE]'), |
3652 helpcategory=command.CATEGORY_CHANGE_NAVIGATION, | 3651 helpcategory=command.CATEGORY_CHANGE_NAVIGATION, |
3653 inferrepo=True, | 3652 helpbasic=True, inferrepo=True, |
3654 intents={INTENT_READONLY}) | 3653 intents={INTENT_READONLY}) |
3655 def log(ui, repo, *pats, **opts): | 3654 def log(ui, repo, *pats, **opts): |
3656 """show revision history of entire repository or files | 3655 """show revision history of entire repository or files |
3657 | 3656 |
3658 Print the revision history of the specified files or the entire | 3657 Print the revision history of the specified files or the entire |
3876 fm.condwrite(ui.debugflag, 'hash', '%s ', hex(mf[f])) | 3875 fm.condwrite(ui.debugflag, 'hash', '%s ', hex(mf[f])) |
3877 fm.condwrite(ui.verbose, 'mode type', '%s %1s ', mode[fl], char[fl]) | 3876 fm.condwrite(ui.verbose, 'mode type', '%s %1s ', mode[fl], char[fl]) |
3878 fm.write('path', '%s\n', f) | 3877 fm.write('path', '%s\n', f) |
3879 fm.end() | 3878 fm.end() |
3880 | 3879 |
3881 @command('^merge', | 3880 @command('merge', |
3882 [('f', 'force', None, | 3881 [('f', 'force', None, |
3883 _('force a merge including outstanding changes (DEPRECATED)')), | 3882 _('force a merge including outstanding changes (DEPRECATED)')), |
3884 ('r', 'rev', '', _('revision to merge'), _('REV')), | 3883 ('r', 'rev', '', _('revision to merge'), _('REV')), |
3885 ('P', 'preview', None, | 3884 ('P', 'preview', None, |
3886 _('review revisions to merge (no merge is performed)')), | 3885 _('review revisions to merge (no merge is performed)')), |
3887 ('', 'abort', None, _('abort the ongoing merge')), | 3886 ('', 'abort', None, _('abort the ongoing merge')), |
3888 ] + mergetoolopts, | 3887 ] + mergetoolopts, |
3889 _('[-P] [[-r] REV]'), | 3888 _('[-P] [[-r] REV]'), |
3890 helpcategory=command.CATEGORY_CHANGE_MANAGEMENT) | 3889 helpcategory=command.CATEGORY_CHANGE_MANAGEMENT, helpbasic=True) |
3891 def merge(ui, repo, node=None, **opts): | 3890 def merge(ui, repo, node=None, **opts): |
3892 """merge another revision into working directory | 3891 """merge another revision into working directory |
3893 | 3892 |
3894 The current working directory is updated with all changes made in | 3893 The current working directory is updated with all changes made in |
3895 the requested revision since the last common predecessor revision. | 3894 the requested revision since the last common predecessor revision. |
4303 else: | 4302 else: |
4304 ui.status(_("(run 'hg heads' to see heads)\n")) | 4303 ui.status(_("(run 'hg heads' to see heads)\n")) |
4305 elif not ui.configbool('commands', 'update.requiredest'): | 4304 elif not ui.configbool('commands', 'update.requiredest'): |
4306 ui.status(_("(run 'hg update' to get a working copy)\n")) | 4305 ui.status(_("(run 'hg update' to get a working copy)\n")) |
4307 | 4306 |
4308 @command('^pull', | 4307 @command('pull', |
4309 [('u', 'update', None, | 4308 [('u', 'update', None, |
4310 _('update to new branch head if new descendants were pulled')), | 4309 _('update to new branch head if new descendants were pulled')), |
4311 ('f', 'force', None, _('run even when remote repository is unrelated')), | 4310 ('f', 'force', None, _('run even when remote repository is unrelated')), |
4312 ('r', 'rev', [], _('a remote changeset intended to be added'), _('REV')), | 4311 ('r', 'rev', [], _('a remote changeset intended to be added'), _('REV')), |
4313 ('B', 'bookmark', [], _("bookmark to pull"), _('BOOKMARK')), | 4312 ('B', 'bookmark', [], _("bookmark to pull"), _('BOOKMARK')), |
4314 ('b', 'branch', [], _('a specific branch you would like to pull'), | 4313 ('b', 'branch', [], _('a specific branch you would like to pull'), |
4315 _('BRANCH')), | 4314 _('BRANCH')), |
4316 ] + remoteopts, | 4315 ] + remoteopts, |
4317 _('[-u] [-f] [-r REV]... [-e CMD] [--remotecmd CMD] [SOURCE]'), | 4316 _('[-u] [-f] [-r REV]... [-e CMD] [--remotecmd CMD] [SOURCE]'), |
4318 helpcategory=command.CATEGORY_REMOTE_REPO_MANAGEMENT) | 4317 helpcategory=command.CATEGORY_REMOTE_REPO_MANAGEMENT, |
4318 helpbasic=True) | |
4319 def pull(ui, repo, source="default", **opts): | 4319 def pull(ui, repo, source="default", **opts): |
4320 """pull changes from the specified source | 4320 """pull changes from the specified source |
4321 | 4321 |
4322 Pull changes from a remote repository to a local one. | 4322 Pull changes from a remote repository to a local one. |
4323 | 4323 |
4433 | 4433 |
4434 finally: | 4434 finally: |
4435 other.close() | 4435 other.close() |
4436 return ret | 4436 return ret |
4437 | 4437 |
4438 @command('^push', | 4438 @command('push', |
4439 [('f', 'force', None, _('force push')), | 4439 [('f', 'force', None, _('force push')), |
4440 ('r', 'rev', [], | 4440 ('r', 'rev', [], |
4441 _('a changeset intended to be included in the destination'), | 4441 _('a changeset intended to be included in the destination'), |
4442 _('REV')), | 4442 _('REV')), |
4443 ('B', 'bookmark', [], _("bookmark to push"), _('BOOKMARK')), | 4443 ('B', 'bookmark', [], _("bookmark to push"), _('BOOKMARK')), |
4445 _('a specific branch you would like to push'), _('BRANCH')), | 4445 _('a specific branch you would like to push'), _('BRANCH')), |
4446 ('', 'new-branch', False, _('allow pushing a new branch')), | 4446 ('', 'new-branch', False, _('allow pushing a new branch')), |
4447 ('', 'pushvars', [], _('variables that can be sent to server (ADVANCED)')), | 4447 ('', 'pushvars', [], _('variables that can be sent to server (ADVANCED)')), |
4448 ] + remoteopts, | 4448 ] + remoteopts, |
4449 _('[-f] [-r REV]... [-e CMD] [--remotecmd CMD] [DEST]'), | 4449 _('[-f] [-r REV]... [-e CMD] [--remotecmd CMD] [DEST]'), |
4450 helpcategory=command.CATEGORY_REMOTE_REPO_MANAGEMENT) | 4450 helpcategory=command.CATEGORY_REMOTE_REPO_MANAGEMENT, |
4451 helpbasic=True) | |
4451 def push(ui, repo, dest=None, **opts): | 4452 def push(ui, repo, dest=None, **opts): |
4452 """push changes to the specified destination | 4453 """push changes to the specified destination |
4453 | 4454 |
4454 Push changesets from the local repository to the specified | 4455 Push changesets from the local repository to the specified |
4455 destination. | 4456 destination. |
4587 """ | 4588 """ |
4588 if repo.recover(): | 4589 if repo.recover(): |
4589 return hg.verify(repo) | 4590 return hg.verify(repo) |
4590 return 1 | 4591 return 1 |
4591 | 4592 |
4592 @command('^remove|rm', | 4593 @command('remove|rm', |
4593 [('A', 'after', None, _('record delete for missing files')), | 4594 [('A', 'after', None, _('record delete for missing files')), |
4594 ('f', 'force', None, | 4595 ('f', 'force', None, |
4595 _('forget added files, delete modified files')), | 4596 _('forget added files, delete modified files')), |
4596 ] + subrepoopts + walkopts + dryrunopts, | 4597 ] + subrepoopts + walkopts + dryrunopts, |
4597 _('[OPTION]... FILE...'), | 4598 _('[OPTION]... FILE...'), |
4598 helpcategory=command.CATEGORY_WORKING_DIRECTORY, | 4599 helpcategory=command.CATEGORY_WORKING_DIRECTORY, |
4599 inferrepo=True) | 4600 helpbasic=True, inferrepo=True) |
4600 def remove(ui, repo, *pats, **opts): | 4601 def remove(ui, repo, *pats, **opts): |
4601 """remove the specified files on the next commit | 4602 """remove the specified files on the next commit |
4602 | 4603 |
4603 Schedule the indicated files for removal from the current branch. | 4604 Schedule the indicated files for removal from the current branch. |
4604 | 4605 |
5130 | 5131 |
5131 Returns 0 on success. | 5132 Returns 0 on success. |
5132 """ | 5133 """ |
5133 ui.write(repo.root + "\n") | 5134 ui.write(repo.root + "\n") |
5134 | 5135 |
5135 @command('^serve', | 5136 @command('serve', |
5136 [('A', 'accesslog', '', _('name of access log file to write to'), | 5137 [('A', 'accesslog', '', _('name of access log file to write to'), |
5137 _('FILE')), | 5138 _('FILE')), |
5138 ('d', 'daemon', None, _('run server in background')), | 5139 ('d', 'daemon', None, _('run server in background')), |
5139 ('', 'daemon-postexec', [], _('used internally by daemon mode')), | 5140 ('', 'daemon-postexec', [], _('used internally by daemon mode')), |
5140 ('E', 'errorlog', '', _('name of error log file to write to'), _('FILE')), | 5141 ('E', 'errorlog', '', _('name of error log file to write to'), _('FILE')), |
5159 ('', 'certificate', '', _('SSL certificate file'), _('FILE')), | 5160 ('', 'certificate', '', _('SSL certificate file'), _('FILE')), |
5160 ('', 'print-url', None, _('start and print only the URL'))] | 5161 ('', 'print-url', None, _('start and print only the URL'))] |
5161 + subrepoopts, | 5162 + subrepoopts, |
5162 _('[OPTION]...'), | 5163 _('[OPTION]...'), |
5163 helpcategory=command.CATEGORY_REMOTE_REPO_MANAGEMENT, | 5164 helpcategory=command.CATEGORY_REMOTE_REPO_MANAGEMENT, |
5164 optionalrepo=True) | 5165 helpbasic=True, optionalrepo=True) |
5165 def serve(ui, repo, **opts): | 5166 def serve(ui, repo, **opts): |
5166 """start stand-alone webserver | 5167 """start stand-alone webserver |
5167 | 5168 |
5168 Start a local HTTP repository browser and pull server. You can use | 5169 Start a local HTTP repository browser and pull server. You can use |
5169 this for ad-hoc sharing and browsing of repositories. It is | 5170 this for ad-hoc sharing and browsing of repositories. It is |
5203 service = server.createservice(ui, repo, opts) | 5204 service = server.createservice(ui, repo, opts) |
5204 return server.runservice(opts, initfn=service.init, runfn=service.run) | 5205 return server.runservice(opts, initfn=service.init, runfn=service.run) |
5205 | 5206 |
5206 _NOTTERSE = 'nothing' | 5207 _NOTTERSE = 'nothing' |
5207 | 5208 |
5208 @command('^status|st', | 5209 @command('status|st', |
5209 [('A', 'all', None, _('show status of all files')), | 5210 [('A', 'all', None, _('show status of all files')), |
5210 ('m', 'modified', None, _('show only modified files')), | 5211 ('m', 'modified', None, _('show only modified files')), |
5211 ('a', 'added', None, _('show only added files')), | 5212 ('a', 'added', None, _('show only added files')), |
5212 ('r', 'removed', None, _('show only removed files')), | 5213 ('r', 'removed', None, _('show only removed files')), |
5213 ('d', 'deleted', None, _('show only deleted (but tracked) files')), | 5214 ('d', 'deleted', None, _('show only deleted (but tracked) files')), |
5221 ('', 'rev', [], _('show difference from revision'), _('REV')), | 5222 ('', 'rev', [], _('show difference from revision'), _('REV')), |
5222 ('', 'change', '', _('list the changed files of a revision'), _('REV')), | 5223 ('', 'change', '', _('list the changed files of a revision'), _('REV')), |
5223 ] + walkopts + subrepoopts + formatteropts, | 5224 ] + walkopts + subrepoopts + formatteropts, |
5224 _('[OPTION]... [FILE]...'), | 5225 _('[OPTION]... [FILE]...'), |
5225 helpcategory=command.CATEGORY_WORKING_DIRECTORY, | 5226 helpcategory=command.CATEGORY_WORKING_DIRECTORY, |
5226 inferrepo=True, | 5227 helpbasic=True, inferrepo=True, |
5227 intents={INTENT_READONLY}) | 5228 intents={INTENT_READONLY}) |
5228 def status(ui, repo, *pats, **opts): | 5229 def status(ui, repo, *pats, **opts): |
5229 """show changed files in the working directory | 5230 """show changed files in the working directory |
5230 | 5231 |
5231 Show status of files in the repository. If names are given, only | 5232 Show status of files in the repository. If names are given, only |
5407 if ((ui.verbose or ui.configbool('commands', 'status.verbose')) | 5408 if ((ui.verbose or ui.configbool('commands', 'status.verbose')) |
5408 and not ui.plain()): | 5409 and not ui.plain()): |
5409 cmdutil.morestatus(repo, fm) | 5410 cmdutil.morestatus(repo, fm) |
5410 fm.end() | 5411 fm.end() |
5411 | 5412 |
5412 @command('^summary|sum', | 5413 @command('summary|sum', |
5413 [('', 'remote', None, _('check for push and pull'))], | 5414 [('', 'remote', None, _('check for push and pull'))], |
5414 '[--remote]', | 5415 '[--remote]', |
5415 helpcategory=command.CATEGORY_WORKING_DIRECTORY, | 5416 helpcategory=command.CATEGORY_WORKING_DIRECTORY, |
5417 helpbasic=True, | |
5416 intents={INTENT_READONLY}) | 5418 intents={INTENT_READONLY}) |
5417 def summary(ui, repo, **opts): | 5419 def summary(ui, repo, **opts): |
5418 """summarize working directory state | 5420 """summarize working directory state |
5419 | 5421 |
5420 This generates a brief summary of the working directory state, | 5422 This generates a brief summary of the working directory state, |
5925 "information")) | 5927 "information")) |
5926 modheads = bundle2.combinechangegroupresults(op) | 5928 modheads = bundle2.combinechangegroupresults(op) |
5927 | 5929 |
5928 return postincoming(ui, repo, modheads, opts.get(r'update'), None, None) | 5930 return postincoming(ui, repo, modheads, opts.get(r'update'), None, None) |
5929 | 5931 |
5930 @command('^update|up|checkout|co', | 5932 @command('update|up|checkout|co', |
5931 [('C', 'clean', None, _('discard uncommitted changes (no backup)')), | 5933 [('C', 'clean', None, _('discard uncommitted changes (no backup)')), |
5932 ('c', 'check', None, _('require clean working directory')), | 5934 ('c', 'check', None, _('require clean working directory')), |
5933 ('m', 'merge', None, _('merge uncommitted changes')), | 5935 ('m', 'merge', None, _('merge uncommitted changes')), |
5934 ('d', 'date', '', _('tipmost revision matching date'), _('DATE')), | 5936 ('d', 'date', '', _('tipmost revision matching date'), _('DATE')), |
5935 ('r', 'rev', '', _('revision'), _('REV')) | 5937 ('r', 'rev', '', _('revision'), _('REV')) |
5936 ] + mergetoolopts, | 5938 ] + mergetoolopts, |
5937 _('[-C|-c|-m] [-d DATE] [[-r] REV]'), | 5939 _('[-C|-c|-m] [-d DATE] [[-r] REV]'), |
5938 helpcategory=command.CATEGORY_WORKING_DIRECTORY) | 5940 helpcategory=command.CATEGORY_WORKING_DIRECTORY, |
5941 helpbasic=True) | |
5939 def update(ui, repo, node=None, **opts): | 5942 def update(ui, repo, node=None, **opts): |
5940 """update working directory (or switch revisions) | 5943 """update working directory (or switch revisions) |
5941 | 5944 |
5942 Update the repository's working directory to the specified | 5945 Update the repository's working directory to the specified |
5943 changeset. If no changeset is specified, update to the tip of the | 5946 changeset. If no changeset is specified, update to the tip of the |