I use Yeoman for deployment of my web app. As per the suggestion of the Yeoman docs, I deploy my site using git subtree, doing something like this:
- grunt build
- git add -A dist
- git commit -m "New release"
- git subtree push --prefix dist origin deploy
Then, on the staging server, the very first time I do:
- git init
- git remote add -t deploy -f origin git@github.com:cdmckay/example.git
- git checkout deploy
Then, every time after that I do:
git pull
However, this causes a couple things I don't like.
Firstly, my master branch now has dist folder, which I think is ugly.
Secondly, my git history gets chocked full of New release messages, as every time I want to push the Yeoman app to my staging server, I have to make another commit.
Is there a better way to set up my deployment such that I can keep the dist folder out of the master branch and get rid of the deployment commit messages?
 
    