Request: git prune on install --recover

During my mirror setup experiments, I ran out of memory or stopped an initial import several times.

Trouble is that this left incomplete pack files in the git folder that caused me to run out of disk space.

Could you add - or add an option for - git prune to the start of the “–recover” operation?

Repro:

  • create svn repository with 5x 100MB each revised several times.
# Warning - svn server needs 8+gb of disk space
# Note - not tested, treat as pseudo bash script
files=$(echo file1.bin file2.bin file3.bin file4.bin file5.bin)
function generate() {
  for file in $files; do head -c=100M /dev/random >$file; done
}
generate && svn add $files && svn commit -m "Commiting test files" $files
for rev in {1..9}; do
  generate && svn commit -m "update $rev" $files
done
  • create a 7.5GB partition for subgit’s git repository, ideally a slow filesystem,
  • subgit configure
  • run subgit install and interrupt while it is translating,
  • run subgit install --recover and interrupt again,
  • repeat several times
    → run out of disk space
  • ls objects and find lots of temp files
  • git prune
  • run subgit install --recover
    → completes

Hello Oliver,

we have added this request to our roadmap:

https://issues.tmatesoft.com/issue/SGT-1339

but as with your another request, this one is also considered as minor and low priority, and due to high load we have no estimation on how soon this feature can be implemented.

1 Like