Suggestions version control webapplications


Long time lurker, first post

I'm a college IT student in my final year in Belgium, right now i have a pretty calm semester so i decided to start a little business for a bit of a side income.

In Belgium there are a lot of small hotels, hostels, b&b's with really crappy sites.
So i'm creating a solution so they can easily have a nice site, where visitors can book and pay their stay.

I'm doing this with laravel (php mvc framework). I've got a basic template ready, the only thing that needs to happen is customize this template with the right pictures and text for each hotel/b&b. Offcourse, i'm a bit of a lazy it guy and i don't want to maintain all of these seperate if this plan succeeds. If i want to make an update to the template, i want this update installed on all the existing laravel instances.

One way would be to use git and create a different branch for each hotel/b&b, but this doesn't seem very logical or correct?
So this is my final question, does anybody have an idea on how i could solve this? All of this will be running on a linux vps.

The way I'd do it with git, from the top of my head.

Treat the template as a library, version that with git. All derived implementations for separate clients have separate git repos, but the catch is that the base template is a git module, instead of being vendored separately, it should sit in a subdirectory, like "template" in your instance.

This is pretty basic, and you'd achieve pretty much what you want. You will only need to be careful with your versioning, you either have everything cutting edge master on those implementations with careful and extensive testing for it, that update on all implementations, or you have to lock submodules to certain versions and upgrade manually when new template version is ready to go. Both ways have their ups and downs, that's up to you :).

would second using git with github.

Have your core files in one directory with the templates reading from a config directory (unique to each site).

Sounds like you should probably make yourself a library or something instead of using templates.