One month ago, Stephen Kelly wrote:
git affects the developer workflow, but that thread was about creating modular releases and downloads, which is a different goal and has a different set of problems to solve. That's what that thread was about. I didn't see any desire to have that as a goal in the thread.
Git doesn't affect users.
Before and after transition to git, they download all-of-boost.zip from the boost website.
To address this point of his, I've been working at a tool, bpm, that can install a modular Boost distribution. As I've already mentioned in other threads, it works like this: D:\boost-1.60.0>bpm install system bpm: installing module 'system' bpm: installing module 'assert' bpm: installing module 'config' bpm: installing module 'core' bpm: installing module 'predef' bpm: installing module 'build' bpm: the following libraries need to be built: system bpm: (use ./b2 to build) bpm: recreating header links bpm: recreating index That is, when told to install Boost.System, it downloads and installs the 'system' package into ./libs/system, along with all its dependencies, then creates links to the headers (like 'b2 headers') in ./include and an ./index.html file listing the installed libraries. The full syntax is: D:\boost-1.60.0>bpm Usage: bpm [-v] [-q] command [options] [modules] -v: Be verbose -vv: Be more verbose -q: Be quiet bpm install [-n] [+d] [-k] [-a] [-i] [-p] <module> <module>... Installs the specified modules and their dependencies into the current directory. -n: Only output what would be installed +d: Do not install dependencies -k: Do not remove partial installations on error -a: All modules (use instead of a module list) -i: Installed modules -p: Partially installed modules bpm remove [-n] [-f] [-d] [-a] [-p] <package> <package>... Removes the specified packages. (A package, like 'numeric', can contain more than one module.) -n: Only output what would be removed -f: Force removal even when dependents exist -d: Remove dependents as well. Requires -f -a: Remove all packages. Requires -f -p: Remove partially installed packages bpm list [-a] [-i] [-p] [-b] [prefix] Lists modules matching [prefix]. -a: All modules (default when no -b) -i: Installed modules (default when -b) -p: Partially installed modules -b: Modules that require building bpm headers Recreates the header links in the include/ subdirectory of the current directory. bpm index Recreates the file index.html, which lists the installed modules, in the current directory. -- This all works already under Windows. (I haven't finished the POSIX part yet but it should be close.) I could have made a Windows binary available for people to play with, but I'd rather give sources (at first). bpm contains code to do rm -rf <directory>, and if I've made a mistake somewhere, it could cause damage. So, if there is interest and there are no objections, I'd like to put this tool into the Boost repository, in tools/bpm.