changeset 163:f38c90953c2c

Make undo and recover friendlier Add them to the help display, have them report failure
author mpm@selenic.com
date Thu, 26 May 2005 09:48:50 -0800
parents 5dcbe4d9a30c
children 2e87f04880ab
files hg mercurial/hg.py
diffstat 2 files changed, 5 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/hg	Thu May 26 09:04:54 2005 -0800
+++ b/hg	Thu May 26 09:48:50 2005 -0800
@@ -36,10 +36,12 @@
  init                  create a new repository in this directory
  log <file>            show revision history of a single file
  merge <path>          merge changes from <path> into local repository
+ recover               rollback an interrupted transaction
  remove [files...]     remove the given files in the next commit
  serve                 export the repository via HTTP
  status                show new, missing, and changed files in working dir
  tags                  show current changeset tags
+ undo                  undo the last transaction
 """
 
 def filterfiles(list, files):
@@ -424,11 +426,9 @@
         print "%-30s %5d:%s" % (k, repo.changelog.rev(n), hg.hex(n))
 
 elif cmd == "recover":
-    ui.status("rolling back any existing journal")
     repo.recover()
 
 elif cmd == "undo":
-    ui.status("rolling back previous transaction")
     repo.recover("undo")
 
 elif cmd == "verify":
--- a/mercurial/hg.py	Thu May 26 09:04:54 2005 -0800
+++ b/mercurial/hg.py	Thu May 26 09:48:50 2005 -0800
@@ -300,7 +300,10 @@
     def recover(self, f = "journal"):
         self.lock()
         if os.path.exists(self.join(f)):
+            self.ui.status("attempting to rollback %s information\n" % f)
             return rollback(self.opener, self.join(f))
+        else:
+            self.ui.warn("no %s information available\n" % f)
 
     def lock(self, wait = 1):
         try: