Comments
Patch
@@ -123,9 +123,13 @@
# it. This ensures that we create it on the first meaningful
# largefiles operation in a new clone.
if create and not os.path.exists(os.path.join(lfstoredir, 'dirstate')):
- util.makedirs(lfstoredir)
matcher = getstandinmatcher(repo)
- for standin in repo.dirstate.walk(matcher, [], False, False):
+ standins = repo.dirstate.walk(matcher, [], False, False)
+
+ if len(standins) > 0:
+ util.makedirs(lfstoredir)
+
+ for standin in standins:
lfile = splitstandin(standin)
lfdirstate.normallookup(lfile)
return lfdirstate
@@ -154,7 +154,20 @@
$ hg init merges
$ cd merges
$ touch f1
- $ hg ci -Aqm "0-root"
+ $ hg ci -Aqm "0-root" --config extensions.largefiles=!
+
+Ensure that .hg/largefiles isn't created before largefiles are added
+#if unix-permissions
+ $ chmod 555 .hg
+#endif
+ $ hg status
+#if unix-permissions
+ $ chmod 755 .hg
+#endif
+
+ $ find .hg/largefiles
+ find: `.hg/largefiles': No such file or directory
+ [1]
ancestor is "normal":
$ echo normal > f