I do something similar with my site, but without the extra intermediary repository. On a push, the server-side hook simply hard resets the content of the folder to the tip of a specific branch. The website itself acts as the canonical repository of, well, itself.