Bernie Innocenti wrote: > > There's mr > > I tried it out. It's a very nice meta-vcs, but there's one annoyance: > you need to register repositories before you can update them.
Ah, that's an overwhelming limitation, indeed (I've never used mr, just thought it's worth mentioning). > How could we make it to work within our new.py script? I don't think I fully understand how it works, but one idea is to probe for the VCS metadata (kinda what VC, or GNUN's GNUmakefile.team does). It's not easy as in VC because we're talking about remote URLs, but since the URL templates are known and are unlikely to change (or if/when they do, you'll know in advance), it is perhaps doable. IOW, the script could try cvs -d :pserver.... svn co .... git clone .... bzr branch .... etc. ...sorted by popularity, perhaps. For cool speedup a simple db can be kept -- I guess projects will not change the VCS every day, so once the right one is determined per project, the expensive per-project check can be skipped (unless the checkout fails, which may mean that the VCS has been changed -- but not necessarily).
