binary files in MQ

Bill Barry after.fallout at gmail.com
Thu Dec 11 10:13:25 CST 2008


I was thinking about a way to do binary files in MQ and came up with the 
following:
1 file with a predefined extension, I'll call it .controller
.controller file syntax:
(first line is the name of the patch file)
- sha_hex_string /path/to/file/in/repository
+ sha_hex_string /path/to/file/in/repository

The sha hex string is a hash of the binary file being managed, in the 
patches directory there is a binaries subdir containing files with sha 
filenames. When pushing, this file would get copied to the specified 
path (if it was a +, if it was a - it would be moved from the repo to 
the binaries dir, thought might need to be given to this a bit more).

The series file would still work the same, except that if a line ended 
in .controller it would be assumed to be a binary containing patch and 
it would use the controller file syntax.

qimport would import patches just like it does now, but could be 
supplied with a zip (zip, tar.gz, bz2, email with attachments ...) file 
as well, in which it would look for a controller file to put on the 
series, or straight up a controller file where the related files are 
located in the same directory or a binaries directory also exists.

I wouldn't have any time to actually work on this for the foreseeable 
future, but I wondered if it was a worthwhile venture. Does it make 
sense? Are there any major roadblocks to this?


More information about the Mercurial-devel mailing list