Our current product is based on Eclipse RCP. We are starting to have problems when we try to have our whole code base inside one eclipse workspace and we were wondering what others were doing.
Here's our setup:
- ~225 eclipse projects (all in trunk/project)
- ~30 eclipse features (all in trunk/features)
- ~900k lines of code
We are finding a few different bottlenecks:
- SVN on Windows is dreadfully slow (tried TortoiseSVN, SmartSVN, command line svn), an update can take in the upwards of 5-8 minutes and it is only updating 10 small files. The only reasonable client is subclipse/subversive, however these have other issues and we have had some trouble with them.
- Eclipse Refresh can take 3-5 minutes
- Eclipse build can take 5-15 minutes
I believe that the solution is limiting the amount of projects that any one developer needs to have checked out at and active at any given time, I'm just trying to see if anyone else has any good practices/policies that have worked for them.
For instance, my first thought is to set the target platform to be the last "safe" build from the trunk and then just checkout the projects on top of that. This works, but does not tell you if you have broken any projects that depend on the project you have effectively overridden.
Another thought was to use project sets and just checkout what you need that way.
Has anyone else run into this problem? If so, what are you doing to get around it?
Thanks.