Peter, > From long time use with large scale usage in a multi-country setup > I think performance improvements (faster cvs diff/update) is > on my wish list.
Generally CVS works very very well over a WAN and people start looking for proxies etc before they look at the existing performance and at procedures - however I'll give you the benefit of the doubt and assume you've already done all that. I think some proxy work was also done in CVS 1.12 but I'm not sure if it was a full read/write through proxy. Generally if something is on your wish list for a FOSS project then you should add it to your 'to do' list, that's why the source code is 'free', so you have the freedom to change it. I know the CVSNT project (Free/GPL like CVS, runs on linux/unix etc) has done some work on WAN performance, including using checksums to improve the performance of status and update over slower WANs (rather than send the file to the server) - this helps particularly if you have a very slow WAN or high latency WAN (eg: Sydney AU to Manchester UK) with large binary files (eg: PDFs). Those improvements went into release 2.5.04, as did a 'local proxy' so that you can set up a proxy for all 'read' operations geographically closer to each team. CVSNT has a separate newsgroup and you should search there if you want to pursue that option. CVSNT forked from CVS back in 1.10 and paralleled it until 1.11 something, so the 'crossgrade' is quite straightforward. Mercurial/Git etc all basically put an entire repository on each PC; a little similar to ClearCase snapshot views. It has many advantages and many disadvantages. What I like least is that it developers can 'push' out selected revisions, eg: 1.2 then 1.224 and 'hide' from the rest of the world what happened between - which is often vital in IP cases - so I don't think they are suitable for commercial development - but may be fine for FOSS work. Again - each of these have their own newsgroups - go there for more info. The same team that wrote CVSNT have released EVS (also called CM Server, previously called CVSNT 3.1) - but that is currently windows-only and whilst 95% of the source is LGPL, the .exe itself is not (EVS is a library for writing version control systems and is 'free' and CVSNT 3.1 is 'free' but CM Server is not). It does however have 'true' multi-site capabilities like Dimensions and ClearCase where each repository 'owns' a 'branch', and all other sites can 'see' other sites' branches and merge from them to their own branches. EVS is also 'open client' - you can currently use CVS, SVN and TeamSystem clients all against a single EVS repository. You guessed it - EVS has it's own newsgroup. Regards, Arthur Barrett
