[PATCH hglib] client: add purge command
idankk86 at gmail.com
Tue Oct 2 15:12:26 CDT 2012
On Tue, Oct 2, 2012 at 8:24 PM, Victor Garcia <bravejolie at gmail.com> wrote:
> # HG changeset patch
> # User victor
> # Date 1349202168 -7200
> # Node ID 6172601e7f7b3d7c8c3539e2758cfba8ab0784a4
> # Parent e5d3b0aa48e6ab79531204f61e25ee335b306df3
> client: add purge command
Thanks for sending this here.
> Adding the purge command to hglib. Since it's an extension, appending
> '--config extensions.hgext.purge=' to enable it
Like I said earlier once an extension is enabled, it lingers in
process forever (since they're managed in a global variable). I guess that's
> diff -r e5d3b0aa48e6 -r 6172601e7f7b hglib/client.py
> --- a/hglib/client.py Tue Jan 17 17:15:47 2012 -0600
> +++ b/hglib/client.py Tue Oct 02 20:22:48 2012 +0200
> @@ -1511,6 +1511,29 @@
> counters = out.rstrip().split(', ')
> return tuple(int(s.split(' ', 1)) for s in counters)
> + def purge(self, files, all=False, include=None, exclude=None):
By the looks of hg purge -h it looks like the signature you gave here
- purge can be invoked without arguments
- files should be called dirs (with a default)
- -a, -p and -0 are missing
> + """
> + Purge the files specified by parameters. It physically removes
> the non-tracked files from the file system.
> + Return True on success
> + all - revert all changes when no arguments given
purge -h says "--all purge ignored files too"?
> + include - include names matching the given patterns
> + exclude - exclude names matching the given patterns
> + """
> + if not isinstance(files, list):
> + files = [files]
> + args = cmdbuilder('purge',
> + all=all, I=include, X=exclude, *files)
> + args.extend(['--config', 'extensions.hgext.purge='])
> + eh = util.reterrorhandler(args)
> + self.rawcommand(args, eh=eh)
> + return bool(eh)
> def version(self):
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Mercurial-devel