I have a complicated set of 3 SVN roots that make working copies in 3 separate directories:
The main IntelliJ project is in /jay/bids/.idea and has SVN roots for the three above working copies, and each is a conventional module.
We have a set of tools in /jay/bids/tools, and many of them use groovy. In my original configuration I just made modules for each of the tools:
And then my main project included those modules as well. It worked great. However, lots of our uses do not want to have groovy compiles on their machines to improve total compile times, and they rarely if ever use the tools, so they requested the tools be taken out of the main build. It would be a great feature to be able to have users choose that certain modules are disabled for them in a project, but as far as I know there is no such feature. Instead I removed those tool modules from the main /jay/bids/.idea project and created directory based projects for each:
Both tool projects were then given the main modules (bids, jboss, bidsops) as part of their configuration. Each tool was also then given the same SVN roots as the main project, which this time are outside the tool project directories.
The problem is that IntelliJ's SVN client seems to be confused about what parts of the tool project .idea directories are under source control. It is not consistent, but often parts of the .idea directories are ignored by IntelliJ. runConfigurations and library files seem especially problematic. The SVN local changes tab will claim that some .idea files are changed, and will check them in if I ask. But if I go to the command line and use the command line SVN client, other shared files have changed and/or been created in the .idea tool directory, and these ones will not get committed by IntelliJ. I end up having to commit them manually using the command line client.
What should I do?