diff --git a/hg b/hg
index 5dcbe4d9a30c4e5561d34f9d9738df3322384d6d_aGc=..f38c90953c2c48eaebe82226167aa86b3106a4b9_aGc= 100644
--- a/hg
+++ b/hg
@@ -36,7 +36,8 @@
  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
@@ -39,7 +40,8 @@
  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,7 +426,6 @@
         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":
@@ -428,7 +429,6 @@
     repo.recover()
 
 elif cmd == "undo":
-    ui.status("rolling back previous transaction")
     repo.recover("undo")
 
 elif cmd == "verify":
diff --git a/mercurial/hg.py b/mercurial/hg.py
index 5dcbe4d9a30c4e5561d34f9d9738df3322384d6d_bWVyY3VyaWFsL2hnLnB5..f38c90953c2c48eaebe82226167aa86b3106a4b9_bWVyY3VyaWFsL2hnLnB5 100644
--- a/mercurial/hg.py
+++ b/mercurial/hg.py
@@ -300,4 +300,5 @@
     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))
@@ -303,4 +304,6 @@
             return rollback(self.opener, self.join(f))
+        else:
+            self.ui.warn("no %s information available\n" % f)
 
     def lock(self, wait = 1):
         try: