On 10/18/2013 03:12 PM, Daniel James wrote:
On 18 October 2013 13:23, Stephen Kelly
wrote: which I think can be done while preserving history. How so? Replaying the history on top of master? That's still a loss of history really, but it's better than a straight addition-of-current-version. Possibly by including all the module history in each smaller module and, if possible, rewriting the history to only include the relevant headers (this would be done before the module is in use). I don't really see a sense in having a non-zero time interval between considering a module converted to git and considering it 'in use'. As far as I understand your mail, you want to do this splitting after conversion, but before considering it 'officially in use' or something? Sorry I should have been clearer, I meant before the smaller modules are in use. I'll break it down into the rough steps for functional_hash:
1. Git conversion creates the functional module, everyone uses this. 2. I manually create the functional_hash module, probably extracted from the functional module in some manner. 3. In a branch in the functional module, delete all the hash files (but keeping html redirect files to avoid breaking links). 4. In a branch in the main boost repo, add the functional_hash submodule, and update the functional submodule, and the appropriate build files etc. 5. Once everything is okay merge the branches.
Why all the branches? That seems to just add a lot of complexity as a result of trying to do this after converting to git. Why not create the functional_hash module now, before converting to git? Then there are never two modules to keep in sync. Thanks, Steve.