Home
Name Modified Size InfoDownloads / Week
README 2016-02-17 3.5 kB
bfm-0.15.zip 2016-02-17 24.3 kB
bfm-0.14.zip 2015-10-16 23.2 kB
bfm-0.12.zip 2013-09-14 22.9 kB
bfm-0.11.zip 2013-07-29 21.1 kB
bfm-0.9.zip 2013-04-21 20.4 kB
Totals: 6 Items   115.5 kB 0
# BFM - Big File Management

## Overview

This tool is intended to manage big files outside of your VCS but in your work
area. It's like mercurial or git largefile extension but independend of any VCS.

Instead of the big file itself only a list of filenames with their
checksums (md5) are committed to the VCS. The BFM can check for	missing or
outdated bigfiles and downloads them from a server using CURL or CP.

The developer has not to care about e.g. using the correct version of an SDK
or big third party library since these things are downloaded in the correct
version which is tracked in the BigFile MD5.

Downloaded files can be located directly in the work area (same directory as the
bigfiles.txt checksum file) or at a specified output directory (option -O) or
in a cache directory to share the downloaded files between multiple work areas.


## Changes

version 0.15
- new option -O outputdir
- new option -x and --bfmcache
- support this option in check, show and download

version 0.14
- environment variables for defaults
- verbose debugging output
- small fixes
- add starter scripts

version 0.13
- upload.py respect file subdirectory
- bugfix to calchash function
- replace "grep --quiet" with "grep -q"

version 0.12
- upload via http if server-url match upload.py

version 0.11
- set filepermission to writeable on extraced archiv to have delete rights
- write info and debug output on stdout, only errors go to stderror

version 0.10
- add option --calchash to calculate md5 hash and --hash to specify a fixed hash for serverfilename
- support option "-" to read filenames, dirs from stdin
- support syntax @filename to read list of files/dirs from that file

version 0.9
- handle windows linefeeds in bigfiles.txt correctly
- add option to INCLUDE and EXCLUDE files by pattern
- add option to run in parallel multiple downloads

version 0.8
- handle spaces in file- and directory names correctly
- speed up by doing less subprocess calling of sed and more in bash string replacement
- add Makefile for bundling output
- add md5 of subdirectory browsing in debug output (helps while looking for diffs)

version 0.7
- add option -D and --dir to support directory handling
- check md5 after upload
- support subdirectories on server by option -P
- add argument of level to option -R
- fixed problem with no read permission on downloaded directory for md5 verification
- shorten names of local directory md5 cache filenames

version 0.6
- add option --show to list managed filenames (used by buildtools like cmake)
- add option -R to run recursivly looking for bigfiles.txt

version 0.5
- add option -r to remove files from bigfiles.txt
- ignore bigfiles.txt on upload even if specified on commandline (through pattern *)
- add option --changed to mark files as locally changed - permit updates
- exit with error code on failed downloads
- abort if server upload dir doesn't exists

version 0.4
- add junit like tests in test/runtest.sh
- add BFM_CACHEDIR variable and upload to cache after download

version 0.3
- add option -n to only show actions without execution
- add debug2 function for additional verbosity using multiple -v arguments
- use .config prefix on settings in bigfiles.txt
- add option --touch to touch files after download
- changed some information outputs

version 0.2
- fixed upload command with CURL

version 0.1
- first version of this tool
- working on OSX and Windows/Cygwin, but should on Linux too
- require bash, curl, md5/md5sum and some other basic commands (e.g. cp, rm, ...)
Source: README, updated 2016-02-17