optspec = """
bup bloom [options...]
--
-o,output= output bloom filename (default: auto-generated)
-d,dir= input directory to look for idx files (default: auto-generated)
-k,hashes= number of hash functions to use (4 or 5) (default: auto-generated)
+o,output= output bloom filename (default: auto)
+d,dir= input directory to look for idx files (default: auto)
+k,hashes= number of hash functions to use (4 or 5) (default: auto)
"""
def do_bloom(path, outfilename):
git.check_repo_or_die()
-do_bloom(opt.dir or git.repo('objects/pack'), opt.output)
+paths = opt.dir and [opt.dir] or git.all_packdirs()
+for path in paths:
+ do_bloom(path, opt.output)
if extra:
do_midx(git.repo('objects/pack'), opt.output, extra, '')
elif opt.auto or opt.force:
- if opt.dir:
- paths = [opt.dir]
- else:
- paths = [git.repo('objects/pack')]
- paths += glob.glob(git.repo('index-cache/*/.'))
+ paths = opt.dir and [opt.dir] or git.all_packdirs()
for path in paths:
debug1('midx: scanning %s\n' % path)
do_midx_dir(path)
- debug1('\n')
else:
o.fatal("you must use -f or -a or provide input filenames")
return os.path.join(repodir, sub)
+def all_packdirs():
+ paths = [repo('objects/pack')]
+ paths += glob.glob(repo('index-cache/*/.'))
+ return paths
+
+
def auto_midx(objdir):
args = [path.exe(), 'midx', '--auto', '--dir', objdir]
try: