Q:

Git workflow for one-man web development version control

I am using a commercial theme for one of my (wordpress) websites, but I always have difficulties merging my custom theme (especially parent theme changes) changes with the newer theme versions, developed by the theme author. This happens because there are always things I need to change in the parent theme.
I was wondering what system (git/svn or something else...) could help me merging my customizations with the future updates. So far I am using .txt files to save my customizations, but this is not a good way to do this.
I have tried git, but I am not sure how to use it in the right way since many files will be overwritten by the next theme update.
Could anyone help me figuring out a git workflow to solve this problem?
Thx,
Engin

A:

With git you will have 2 branches:

Master branche - your customizations and production code
Theme branche - branch with original theme files

Start:
Create master branche with theme without customizations. Clone this branch to theme branche.
How to develop:
So you will be develop at master branche. If some new updates will be released for your theme you switch to theme branche, here you will delete full theme folder and add new theme folder (need delete because of deleted files in new theme release). Then commit to server and now merge theme branche to master branche. After that you resolve only conflicts between your code and new theme code.

