lfs: enable the extension locally after converting to an 'lfs' repo
authorMatt Harbison <matt_harbison@yahoo.com>
Sun, 26 Nov 2017 21:14:48 -0500
changeset 35215 8887a45e3384
parent 35214 a8c778b2a689
child 35216 fcc96cf0983d
lfs: enable the extension locally after converting to an 'lfs' repo This is consistent with clone and share in the previous commits.
hgext/lfs/wrapper.py
tests/test-lfs-largefiles.t
tests/test-lfs.t
--- a/hgext/lfs/wrapper.py	Thu Nov 16 21:01:21 2017 -0500
+++ b/hgext/lfs/wrapper.py	Sun Nov 26 21:14:48 2017 -0500
@@ -184,6 +184,10 @@
                         self.repo.requirements.add('lfs')
                         self.repo._writerequirements()
 
+                        # Permanently enable lfs locally
+                        with self.repo.vfs('hgrc', 'a', text=True) as fp:
+                            fp.write('\n[extensions]\nlfs=\n')
+
                 return node
 
         sink.__class__ = lfssink
--- a/tests/test-lfs-largefiles.t	Thu Nov 16 21:01:21 2017 -0500
+++ b/tests/test-lfs-largefiles.t	Sun Nov 26 21:14:48 2017 -0500
@@ -284,7 +284,8 @@
   0 remove large_by_size.bin
   $ cd nolargefiles
 
-The requirement is added to the destination repo
+The requirement is added to the destination repo, and the extension is enabled
+locally.
 
   $ cat .hg/requires
   dotencode
@@ -293,6 +294,8 @@
   lfs
   revlogv1
   store
+  $ hg config --debug extensions | grep lfs
+  $TESTTMP/nolargefiles/.hg/hgrc:*: extensions.lfs= (glob)
 
   $ hg log -r 'all()' -G -T '{rev} {join(lfs_files, ", ")} ({desc})\n'
   o  8  (remove large_by_size.bin)
--- a/tests/test-lfs.t	Thu Nov 16 21:01:21 2017 -0500
+++ b/tests/test-lfs.t	Sun Nov 26 21:14:48 2017 -0500
@@ -644,3 +644,6 @@
   oid sha256:66100b384bf761271b407d79fc30cdd0554f3b2c5d944836e936d584b88ce88e
   size 39
   x-is-binary 0
+
+  $ hg -R convert_lfs2 config --debug extensions | grep lfs
+  $TESTTMP/convert_lfs2/.hg/hgrc:*: extensions.lfs= (glob)