On 01.07.2011 18:47, Herbert Duerr wrote:
On 01.07.2011 13:42, Greg Stein wrote:[...] Please look at tools/dev/fetch-all-cws.sh. Each of these CWS repositories (on Mac OS) are consuming 600 Mb *minimum*. I've fetched a dozen, and a couple are over 2 Gb each, and another over 1 Gb. And this is with the clone/pull technique.Because of the disk space demands I think an approach with one repository with one branch per CWS would be better for the initial import. In hg there are more opportunities for this approach (using NamedBranched, UnnamedBranches, MultipleHeads, LocalBranches or Bookmarks) than I as git-fan would care to know. Please see the attached file where I hacked together a script that imports the CWSs into one repository with multiple bookmarks.
of course, mirroring all the separate repos is only an intermediate step, with the goal that constructing the single repo doesn't need to go over the slow net.
I don't have enough space on my laptop to do a complete trial run. I'm hoping that somebody can figure out how to reduce the disk footprint, or determine that we just have to suck it up. And it would be nice to understand what that target size will be, for all 250 CWS repositories.As Michael mentioned it's much less than the 250, as only about 15 CWSses (see http://goo.gl/gczAH for details) are marked as fully tested and but not-yet integrated. From these the ones targeted at the stabilization branch (calc67, calc68, ooo34gsl01, ooo34gsl02, writerfilter10, native373, jl167) are more important than the ones targeted for trunk (sb140, sb143, hsqldb19, hr77, ause131, sd2gbuild). There are a few more very good CWSses which were not yet officially approved in the old OOo system. E.g. CWS aw080 Armin mentioned. If Armin can confirm that this CWS is ready we should pull it in too. Once we have a better picture of what is ready or not cws-list.txt needs to be updated.
i think the goal is to migrate all open CWSes, because perhaps there's still something useful in there, and we don't have time to investigate every CWS now.
We have a script. It is time to make it work.Please see the attached file. I'm afraid to check it in as the related single-hg.sh is not yet updated accordingly and also because I'm more of a HG victim than a HG power-user ;-) Please note that you either have to use HG>=1.8 or enable its bookmark extension before you run the attached script.
i've not used bookmarks or anything like that either, but it looks like it could work, except i think we may need to prevent it from creating wrong bookmarks in case no changes are to be pulled (it seems in this case, the hg bookmark -r tip would create a bookmark $cws which points at the previously pulled cws, instead of doing nothing; "tip" is always the head that was pulled last into the repo).
just tried it out, and it took 80 minutes to produce a 2.6 GB repo with 178 bookmarks.
indeed a lot of bookmarks are duplicated, as described above. tweaked it a bit, see attachment. regards, michael -- "Simply, I'd say that porting [Linux] is impossible." -- Linus Torvalds (26. 08. 1991)
fetch-all-cws.sh
Description: application/shellscript
