diff --git a/mercurial/hg.py b/mercurial/hg.py --- a/mercurial/hg.py +++ b/mercurial/hg.py @@ -277,6 +277,7 @@ def clone(ui, source, dest=None, pull=Fa % dest) raise + hardlink = None for f in src_repo.store.copylist(): src = os.path.join(src_repo.sharedpath, f) dst = os.path.join(dest_path, f) @@ -287,7 +288,7 @@ def clone(ui, source, dest=None, pull=Fa if dst.endswith('data'): # lock to avoid premature writing to the target dest_lock = lock.lock(os.path.join(dstbase, "lock")) - util.copyfiles(src, dst) + hardlink = util.copyfiles(src, dst, hardlink) # we need to re-init the repo after manually copying the data # into it