How can you manage something like that? I tried my best to design the subsystem to be reusable, but there are just certain things that are unique to the site that have to be customized (e.g. fields in Account entity, or cfc="" in orm annotation).
I thought of using SVN and branch out the customization, but we found it very cumbersome quick as the commit person has to decide an enhancement / bug fix belongs to the Truck or Branch every time and once something is missed, is not easy to undo.
So... What's the best way to handle this situation? Just clone the set of code into a new source control, and fix bugs on both/all source controls?
I seems to me that you are trying to reuse code between two sites but there are subtle differences to the code. I know this is going to sound easier said than done, but I think you'll have to separate out the differences. So if it's only the Accounts
CFC that needs to change, then maintain two version of that, one for each site.
Then you can setup some CF mappings. You can then have a set of CFCs for both sites under com.common.model
and another under com.mysite.model
and another under com.myothersite.model
.
That way you avoid site specific conditional logic in your model layer - which would turn into a big mess very quick.
Hope that helps.