I have developed a Rails application as a "template" that also works on its own. Now I forked this in git to build a second app with very similar code but some important changes. Newer features, however, are developed in the template Rails app and I would like to be able to use them in the forked app without the code in the forked app being able to override code in the template app. I realize now, that forking wasn't an ideal strategy because it is basically the opposite of what I want. What alternative do I have? I looked at git submodules, but because the two apps have largely the same code this does not seem ideal.