What optimisations exist (including even alternatives to git subtree) if you wish to include a subproject in your main project but never contribute changes upstream?
Actual use case: I am embedding Ghost into an existing express.js website, e.g. into lib/Ghost. I will need to make a few hacks to it, the type they would not want contributed upstream anyway. Any normal contributing to the Ghost project would be done via a typical forking on GitHub, instead of from within my other project.
Therefore after the initial embedding of Ghost into my project, the only things happening would be the occasional local source code change, plus sometimes fetching from upstream for updates from their master branch.
In such a scenario, is git subtree still a suitable approach, and if it is then are there either any gotchas or simplifications which would apply, due to this need to never contribute upstream? And would it therefore also be possible to have the main TryGhost/Ghost repository as my subtree upstream, rather than first forking Ghost and then having the fork as the project's upstream?