From 73d0dfc9dd7e6e800297b5084de84b727e28b900 Mon Sep 17 00:00:00 2001 From: panzercheg Date: Wed, 4 Dec 2019 10:14:15 +0300 Subject: [PATCH] git-p4: use lfs.storage instead of local .git/lfs Use lfs.storage if it defined in git.config. If lfs.storage not define - used local .git/lfs. Original code uses local .git/lfs in sync/clone operations, but if you have external lfs storage better to use it. Signed-off-by: r.burenkov --- git-p4.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/git-p4.py b/git-p4.py index 60c73b6a374ccc..2bd0497c31678c 100755 --- a/git-p4.py +++ b/git-p4.py @@ -1257,9 +1257,13 @@ def generatePointer(self, contentFile): pointerFile = re.sub(r'Git LFS pointer for.*\n\n', '', pointerFile) oid = re.search(r'^oid \w+:(\w+)', pointerFile, re.MULTILINE).group(1) + # if someone use external lfs.storage ( not in local repo git ) + lfs_path = os.path.join(os.getcwd(), '.git', 'lfs') + if gitConfig('lfs.storage'): + lfs_path = gitConfig('lfs.storage') localLargeFile = os.path.join( - os.getcwd(), - '.git', 'lfs', 'objects', oid[:2], oid[2:4], + lfs_path, + 'objects', oid[:2], oid[2:4], oid, ) # LFS Spec states that pointer files should not have the executable bit set.