Reputation: 18933
We are currently developing a web application meant to run in Linux/Unix web server and Windows web servers. Our app for both systems are very similar, being a external library (wkHTMLtoPDF) and its wrapper the only real difference between them.
So we wish to maintain a set of common files, which will be actively under development, while the OS specific libraries are kept apart. This is specially relevant since some of our developers work in linux, others in Windows and some other in MAC.
Up until now we've been locking those libraries and wrappers from committing but sometimes someone forgets and, well, it gets messy.
To address this problem, I thought of creating different repositories:
When someone checks out, they choose a version which will download Common + the selected OS. Files should be in the same folder but any changes to those files would be committed to their respective repository.
Is this possible?
NOTE: Those files would not actually be in the same folder since wkhtmltopdf will live in myapp/libraries/wkhtmltopdf while the rest is at myapp/
Upvotes: 1
Views: 100
Reputation: 8427
Of course your solution is possible. You can create the four mentioned repositories and use svn::external property to get the common repository whenever each platform-specific repo is being checked out. But, as far as you are developing a single web application for different platforms, separating the repositories is not a good practice. Doing this way, tagging your whole product (e.g. all platform-specific parts) is a hard work.
Upvotes: 3