On Tue, Mar 23, 2010 at 09:13:53AM -0500, Ryan Schmidt wrote: > On Mar 23, 2010, at 09:01, Tino Schwarze wrote: > > > We have an application which consists of multiple modules which are > > packaged together, then installed into a Web-application layout. That > > is: The repository layout differs from the final installed application > > layout (files are distributed across the whole installation at various > > places). > > > > For example, consider the following repository structure (I'm making > > this up for simplicity): > > > > /trunk/module1/jsp/something.jsp > > /trunk/module1/java/com/c4u/module1/Someclass.java > > /trunk/module1/sql/create_scripts/sometable.sql > > /trunk/module2/jsp/anotherthing.jsp > > /trunk/module2/java/com/c4u/module2/Anotherclass.java > > /trunk/module2/sql/create_scripts/anothertable.sql > > > > After repackaging and installing, these files are arranged like this: > > > > webroot/jsp/c4u/module1/something.jsp > > webroot/jsp/c4u/module2/anotherthing.jsp > > webroot/WEB-INF/classes/com/c4u/module1/Someclass.java > > webroot/WEB-INF/classes/com/c4u/module2/Anotherclass.java > > sql/c4u/module1/create_scripts/sometable.sql > > sql/c4u/module2/create_scripts/anothertable.sql > > You may want to look into file-level svn:externals available in svn 1.5 and > later. > I'm not certain this will 100% deal with your situation, but it's the only > solution that comes to my mind.
File externals have several known issues and I would not recommend using them, ever, in their current implementation (the plan is to fix them eventually as part of the on-going working copy code rewrite). Using the hack you used in CVS will not work well with Subversion either. Some suggestions: 1) Change your way of doing things: don't develop within directories that are not under version control. 2) Have you considered if your problem can be solved by using directory externals? 3) Have you considered if your problem can be solved by versioning symlinks within Subversion? 4) Maybe some combination of 1), 2), and/or 3) will help? Stefan