diff hgext/mq.py @ 6472:8c4cd80afd3e

mq: add --force option to strip
author Dirkjan Ochtman <dirkjan@ochtman.nl>
date Fri, 04 Apr 2008 17:44:31 +0200
parents f3c3965fa0ff
children 36434ca0e7b0
line wrap: on
line diff
--- a/hgext/mq.py	Fri Apr 04 22:19:24 2008 +0200
+++ b/hgext/mq.py	Fri Apr 04 17:44:31 2008 +0200
@@ -662,14 +662,14 @@
         finally:
             del wlock
 
-    def strip(self, repo, rev, update=True, backup="all"):
+    def strip(self, repo, rev, update=True, backup="all", force=None):
         wlock = lock = None
         try:
             wlock = repo.wlock()
             lock = repo.lock()
 
             if update:
-                self.check_localchanges(repo, refresh=False)
+                self.check_localchanges(repo, force=force, refresh=False)
                 urev = self.qparents(repo, rev)
                 hg.clean(repo, urev)
                 repo.dirstate.write()
@@ -2043,7 +2043,7 @@
     elif opts['nobackup']:
         backup = 'none'
     update = repo.dirstate.parents()[0] != revlog.nullid
-    repo.mq.strip(repo, rev, backup=backup, update=update)
+    repo.mq.strip(repo, rev, backup=backup, update=update, force=opts['force'])
     return 0
 
 def select(ui, repo, *args, **opts):
@@ -2352,7 +2352,8 @@
          _('hg qseries [-ms]')),
     "^strip":
         (strip,
-         [('b', 'backup', None, _('bundle unrelated changesets')),
+         [('f', 'force', None, _('force removal with local changes')),
+          ('b', 'backup', None, _('bundle unrelated changesets')),
           ('n', 'nobackup', None, _('no backups'))],
          _('hg strip [-f] [-b] [-n] REV')),
     "qtop": (top, [] + seriesopts, _('hg qtop [-s]')),