comparison hglib/client.py @ 47:94d2988e55b7

client: add revert command
author Idan Kamara <idankk86@gmail.com>
date Thu, 18 Aug 2011 14:29:29 +0300
parents ebcc5d7dd528
children 82d927ac1329
comparison
equal deleted inserted replaced
46:ebcc5d7dd528 47:94d2988e55b7
593 raise error.CommandError(args, ret, out, err) 593 raise error.CommandError(args, ret, out, err)
594 594
595 out = self.rawcommand(args, eh=eh) 595 out = self.rawcommand(args, eh=eh)
596 return not warnings[0] 596 return not warnings[0]
597 597
598 def revert(self, files, rev=None, all=False, date=None, nobackup=False,
599 dryrun=False, include=None, exclude=None):
600 if not isinstance(files, list):
601 files = [files]
602
603 args = cmdbuilder('revert', *files, r=rev, a=all, d=date,
604 no_backup=nobackup, n=dryrun, I=include, X=exclude)
605
606 # we could use Python 3 nonlocal here...
607 warnings = [False]
608
609 def eh(ret, out, err):
610 if ret == 1:
611 warnings[0] = True
612 else:
613 raise error.CommandError(args, ret, out, err)
614
615 out = self.rawcommand(args, eh=eh)
616 return not warnings[0]
617
598 def root(self): 618 def root(self):
599 return self.rawcommand(['root']).rstrip() 619 return self.rawcommand(['root']).rstrip()
600 620
601 def status(self, rev=None, change=None, all=False, modified=False, added=False, 621 def status(self, rev=None, change=None, all=False, modified=False, added=False,
602 removed=False, deleted=False, clean=False, unknown=False, 622 removed=False, deleted=False, clean=False, unknown=False,