Patchwork [2,of,4,V2] largefiles: add a 'debuglfput' command to put largefile into the store

login
register
mail settings
Submitter Boris Feld
Date Jan. 8, 2018, 11 a.m.
Message ID <8f8b48db23a6df109d83.1515409219@FB>
Download mbox | patch
Permalink /patch/26606/
State Superseded
Headers show

Comments

Boris Feld - Jan. 8, 2018, 11 a.m.
# HG changeset patch
# User Boris Feld <boris.feld@octobus.net>
# Date 1513860806 -3600
#      Thu Dec 21 13:53:26 2017 +0100
# Node ID 8f8b48db23a6df109d8318a74dd7d80165986d97
# Parent  cfcfc7938b0411f91f8626500cafaad0d522e1ee
# EXP-Topic largefile-url
# Available At https://bitbucket.org/octobus/mercurial-devel/
#              hg pull https://bitbucket.org/octobus/mercurial-devel/ -r 8f8b48db23a6
largefiles: add a 'debuglfput' command to put largefile into the store

We add a new debug command able to add arbitrary new files into the largefile
store. This will be useful for debugging, testing and other unholy usecase.

Patch

diff --git a/hgext/largefiles/lfcommands.py b/hgext/largefiles/lfcommands.py
--- a/hgext/largefiles/lfcommands.py
+++ b/hgext/largefiles/lfcommands.py
@@ -593,3 +593,12 @@  def lfpull(ui, repo, source="default", *
         (cached, missing) = cachelfiles(ui, repo, rev)
         numcached += len(cached)
     ui.status(_("%d largefiles cached\n") % numcached)
+
+@command('debuglfput',
+    [] + cmdutil.remoteopts,
+    _('FILE'))
+def debuglfput(ui, repo, filepath, **kwargs):
+    hash = lfutil.hashfile(filepath)
+    storefactory.openstore(repo).put(filepath, hash)
+    ui.write('%s\n' % hash)
+    return 0