How to store custom version / differentiell branches in SVN? -


we want create custom versions of our software different customers. these custom version can more or less customized there might 10 changed files smaller ones , hundreds of changed files bigger ones. since there might big number of custom version, don't want copy/branch whole project, rather add changed files custom version folder. structure might this:

standard version: - foo   - bar     - class1     - class2     - class3  custom version x: - foo   - bar     - class1  custom version y: - foo   - bar     - class2     - customclassy 

when building project, checkout standard version first , custom version second, overwriting standard files customized. compile, install, test , on.

my question is: useable concept? have deployed this? obstacles? , alternatives?

one alternative comes mind creating traditional branch, merge changes standard version regularly. maybe automated build server merge changes every night before doing full build?

you can this, there caveats - need consider how handle (for example), deleting file in base version in custom folder.

another approach have bunch of customer specific directories (under /customer). treat 'vanilla' version customer no deltas. build process take base version , iterate on customer directories, building each in turn. bonus points, @ using union filesystem (like aufs) don't have refresh base code each time.

or, keep each customer's changes patch files. require more work on checkin/out (unless script hooks), should make process of keeping customer files date easier.


Comments

Popular posts from this blog

html - How to style widget with post count different than without post count -

How to remove text and logo OR add Overflow on Android ActionBar using AppCompat on API 8? -

javascript - storing input from prompt in array and displaying the array -