on Mon Dec 03 2012, Nevin Liber <nevin-AT-eviloverlord.com> wrote:
> On 3 December 2012 14:30, Eric Niebler <
er...@boostpro.com> wrote:
>
> - The modularized repos will have *no* history.
> - The super-module will also have *no* history.
> - The history will be in its own repo. There will be an option,
> as a
> separate step, to "graft" the history onto each sub-module
> through deep
> git magic that I don't understand.
>
> Why? Because we don't want each and every sub-module to contain
> the entire ancient history of Boost. That would be gross
> duplication that takes up lots of space on everybody's machines
> (since with git, all history is local).
>
>
> So, is there a longer term plan to periodically purge "history" from
> Boost repos?
No. And like Eric I don't see why we'd want to.
> If not, this seems like a rationalization, not a justification.
How's this for a justification? If you ever want to bring the complete
histories of multiple libraries back together into the same repository,
it'll may be a lot easier with a graft than if you have to resolve the
varying fates of any files that may exist in the two repositories.
Plus, it gives us valuable flexibility without lock-in. We're not sure
exactly what the most useful view will be of the transition between
non-modular and modular layouts, and if ancient history is grafted on,
it'll be easier for users to experiment and change that. Initially we
expect the transition to look like many files getting deleted and a few
getting moved, all in one commit. Maybe it makes sense to do that in
two commits, though, for example. Or, maybe people will really want to
see a "synthesized" history that isn't historically accurate but tracks
all their old changes in their new locations and doesn't include changes
to other libraries. In fact, I can imagine this latter view being the
most useful of all. But since it's fictional, I don't think we want to
lock it in as the only view.
> Personally, I'd rather see the history with it; that information is
> invaluable when tracking down problems, and any non-ordinary steps
> required to get at it make it that much more painful. Isn't the
> point behind version control to be able to look at the history?
Yes.
> While I agree the older the history is the less likely it is one
> will ever need to look at it, that need is still non-zero.
Of course. That's why we think it's important to provide it. We could
do this either way, of course, but I think the graft is a much safer and
more flexible way.
--
Dave Abrahams
BoostPro Computing Software Development Training
http://www.boostpro.com Clang/LLVM/EDG Compilers C++ Boost