Comments
Patch
@@ -559,16 +559,6 @@
# this isn't legal, let the original function deal with it
return orig(ui, repo, pats, opts, rename)
- def makestandin(relpath):
- path = pathutil.canonpath(repo.root, repo.getcwd(), relpath)
- return os.path.join(repo.wjoin(lfutil.standin(path)))
-
- fullpats = scmutil.expandpats(pats)
- dest = fullpats[-1]
-
- if os.path.isdir(dest):
- if not os.path.isdir(makestandin(dest)):
- os.makedirs(makestandin(dest))
# This could copy both lfiles and normal files in one command,
# but we don't want to do that. First replace their matcher to
# only match normal files and run it, then replace it to just
@@ -595,6 +585,17 @@
except OSError:
return result
+ def makestandin(relpath):
+ path = pathutil.canonpath(repo.root, repo.getcwd(), relpath)
+ return os.path.join(repo.wjoin(lfutil.standin(path)))
+
+ fullpats = scmutil.expandpats(pats)
+ dest = fullpats[-1]
+
+ if os.path.isdir(dest):
+ if not os.path.isdir(makestandin(dest)):
+ os.makedirs(makestandin(dest))
+
try:
try:
# When we call orig below it creates the standins but we don't add
@@ -620,10 +620,16 @@
$ hg rename d1/d11/a1 .hg
abort: path contains illegal component: .hg/a1 (glob)
[255]
+ $ hg --config extensions.largefiles= rename d1/d11/a1 .hg
+ abort: path contains illegal component: .hg/a1 (glob)
+ [255]
$ hg status -C
$ hg rename d1/d11/a1 ..
abort: ../a1 not under root '$TESTTMP' (glob)
[255]
+ $ hg --config extensions.largefiles= rename d1/d11/a1 ..
+ abort: ../a1 not under root '$TESTTMP' (glob)
+ [255]
$ hg status -C
$ mv d1/d11/a1 .hg