I have an app &quot;Foo&quot; and would like to make a new application based on it called &quot;Bar&quot;.<div><br></div><div>Bar will get a new design and templates, and will have many of the same controller actions.  But, I expect over time the two apps will drift apart in functionality.  Different people will maintain Foo and Bar apps.</div>

<div><br></div><div>Is there a better approach than making a copy and s/Foo/Bar/g in most directories (lib, t)?</div><div><br></div><div>I first thought I&#39;d pull out the controllers from the original Foo and turn them into roles, and then just use the roles in both applications, but I&#39;m not sure we want to share code like for the risk of a change in one role is not wanted in the other (and is missed by testing).</div>

<div><br></div><div>The other option, of course, is to keep one app and have it run with different configurations and different &quot;root&quot; directory (so separate css, js, templates, etc).  But, again, then have to think about how to manage changes that only effect one app.</div>

<div><br></div><div>Suggestions?</div><div><br></div><div><br clear="all"><br>-- <br>Bill Moseley<br><a href="mailto:moseley@hank.org" target="_blank">moseley@hank.org</a><br>
</div>