You can use Git to manage version of your content effectively. You can also use Git to manage any changes you make to the theme you use.
Rather than keep all these seperate changes in one repository, you can use Git submodules to manage your theme and content changes seperately.
In have detailed how I used Git Submodules for managing content seperately from a custom theme and how to get started with Hexo
This work is licensed under a Creative Commons Attribution 4.0 ShareAlike License, including custom images & stylesheets. Permissions beyond the scope of this license may be available at @jr0cket