clone: properly create target directories during local clone (issue6581)

The store encoding was mudding the water. This lead to local clone crashing for
file with long filename as their destination directory needed to be encoded.

Differential Revision: https://phab.mercurial-scm.org/D11340
19 jobs for topic/stable/issue6581 in 120 minutes and 54 seconds (queued for 5 seconds)
Name Stage Failure
failed
windows-py3-pyox Tests
Reusing existing Mercurial repository
lock: free
wlock: free

Pulling changeset cd7e8187a1f041ac59153c58ef4c76079fadf382...
pulling from https://gitlab-ci-token:***@foss.heptapod.net/octobus/mercurial-devel
abort: filtered revision 'cd7e8187a1f041ac59153c58ef4c76079fadf382' (not in 'served' subset)
Cleaning up file based variables
ERROR: Job failed: exit status 1
failed
test-py3-rust Tests The script exceeded the maximum execution time set for the job
    self.run()
File "/usr/lib/python3.7/threading.py", line 865, in run
self._target(*self._args, **self._kwargs)
File "tests/run-tests.py", line 2556, in job
ValueError: Could not find output channel

........s.....................................s..s....................s.......s........................................................s...s.....................s...............s....................................s.ss.s.....................................................s........................................s............s.....................................s......................s..........................................................s....s.s.......................s..........ss.......s.........s............................................................................................................................
Cleaning up file based variables
Pulling docker image octobus/heptapod-runner-helper:x86_64-e7173c85861f ...
ERROR: Job failed: execution took longer than 2h0m0s seconds