The company I work for has a number of websites it needs to produce for various things and we're using Umbraco for this. However, there are some common elements between each site. So rather than pull down umbraco from NuGet, install it, add all the common packages again, set up the standard master pages, etc. We'd like to be able to create all that once and then each time we need to start a new site we can use that template site and move on from there.
My initial idea was to create the base site then store it in a git repository, each time a new site was needed we could just fork the repository then move on from there. The template repository can be updated from time-to-time as new versions of umbraco come out. The main issue I have with this is that we'd probably have to store a backup of the database in there too (which doesn't quite sit right with me). We could write a script to put everything in place when a new site is created.
So, my question is: What is the best way to create an umbraco base site that we can reuse and build upon for each site that we need to create?