588 kwt.overwrite(self[n], sorted(ctx.added() + ctx.modified()), |
588 kwt.overwrite(self[n], sorted(ctx.added() + ctx.modified()), |
589 False, True) |
589 False, True) |
590 kwt.restrict = restrict |
590 kwt.restrict = restrict |
591 return n |
591 return n |
592 |
592 |
593 def rollback(self, dryrun=False): |
593 def rollback(self, dryrun=False, force=False): |
594 wlock = self.wlock() |
594 wlock = self.wlock() |
595 try: |
595 try: |
596 if not dryrun: |
596 if not dryrun: |
597 changed = self['.'].files() |
597 changed = self['.'].files() |
598 ret = super(kwrepo, self).rollback(dryrun) |
598 ret = super(kwrepo, self).rollback(dryrun, force) |
599 if not dryrun: |
599 if not dryrun: |
600 ctx = self['.'] |
600 ctx = self['.'] |
601 modified, added = _preselect(self[None].status(), changed) |
601 modified, added = _preselect(self[None].status(), changed) |
602 kwt.overwrite(ctx, modified, True, True) |
602 kwt.overwrite(ctx, modified, True, True) |
603 kwt.overwrite(ctx, added, True, False) |
603 kwt.overwrite(ctx, added, True, False) |