diff --git a/mercurial/commands.py b/mercurial/commands.py
--- a/mercurial/commands.py
+++ b/mercurial/commands.py
@@ -2246,10 +2246,10 @@ def debugpvec(ui, repo, a, b=None):
              (abs(pa._depth - pb._depth), pvec._hamming(pa._vec, pb._vec),
               pa.distance(pb), rel))
 
-@command('debugrebuildstate',
+@command('debugrebuilddirstate|debugrebuildstate',
     [('r', 'rev', '', _('revision to rebuild to'), _('REV'))],
     _('[-r REV]'))
-def debugrebuildstate(ui, repo, rev):
+def debugrebuilddirstate(ui, repo, rev):
     """rebuild the dirstate as it would look like for the given revision
 
     If no revision is specified the first current parent will be used.
diff --git a/tests/test-completion.t b/tests/test-completion.t
--- a/tests/test-completion.t
+++ b/tests/test-completion.t
@@ -92,7 +92,7 @@ Show debug commands if there are no othe
   debugpathcomplete
   debugpushkey
   debugpvec
-  debugrebuildstate
+  debugrebuilddirstate
   debugrename
   debugrevlog
   debugrevspec
@@ -247,7 +247,7 @@ Show all commands + options
   debugpathcomplete: full, normal, added, removed
   debugpushkey: 
   debugpvec: 
-  debugrebuildstate: rev
+  debugrebuilddirstate: rev
   debugrename: rev
   debugrevlog: changelog, manifest, dump
   debugrevspec: