diff --git a/mercurial/hg.py b/mercurial/hg.py
index 143efea71c2ab175b210fc2f400888c2f10c0898_bWVyY3VyaWFsL2hnLnB5..e8deaa77c1b6d0ca72e0efbce20fab679c68f5eb_bWVyY3VyaWFsL2hnLnB5 100644
--- a/mercurial/hg.py
+++ b/mercurial/hg.py
@@ -266,7 +266,7 @@
         raise error.Abort(_('destination already exists'))
 
     if not destwvfs.isdir():
-        destwvfs.mkdir()
+        destwvfs.makedirs()
     destvfs.makedir()
 
     requirements = ''
diff --git a/tests/test-share.t b/tests/test-share.t
index 143efea71c2ab175b210fc2f400888c2f10c0898_dGVzdHMvdGVzdC1zaGFyZS50..e8deaa77c1b6d0ca72e0efbce20fab679c68f5eb_dGVzdHMvdGVzdC1zaGFyZS50 100644
--- a/tests/test-share.t
+++ b/tests/test-share.t
@@ -298,6 +298,6 @@
 
 test behavior when sharing a shared repo
 
-  $ hg share -B repo3 repo5
+  $ hg share -B repo3 missingdir/repo5
   updating working directory
   2 files updated, 0 files merged, 0 files removed, 0 files unresolved
@@ -302,7 +302,7 @@
   updating working directory
   2 files updated, 0 files merged, 0 files removed, 0 files unresolved
-  $ cd repo5
+  $ cd missingdir/repo5
   $ hg book
      bm1                       3:b87954705719
      bm3                       4:62f4ded848e4
      bm4                       5:92793bfc8cad
@@ -305,8 +305,8 @@
   $ hg book
      bm1                       3:b87954705719
      bm3                       4:62f4ded848e4
      bm4                       5:92793bfc8cad
-  $ cd ..
+  $ cd ../..
 
 test what happens when an active bookmark is deleted