You will need a script of some kind of assembly for various content branches for you. The main way to do this is to add the contents to the database (in your case, just passing them to the master branch) and then in the temporary index, after reading all the content you want in each branch (git read-tree / git update-index) writing this tree (git write tree), writing a commit object (git commit-tree) and updating the branch to this new commit (git update-links). These are all plumbing commands that are usually not used in everyday operations, but allow you to create snapshots without simultaneously having all the contents in a directory on disk.
An example script to do something like this:
http://github.com/schacon/gitcrazy/blob/master/update_content.rb
, ( "memcache", " " "-" ). :
$ update_content.rb /path/to/content file_name memcache
git db, ( memcache). , git , . ('server/s1', 'server/s2' ..).
, - , script . , . "" script, , .