Last active
December 7, 2017 19:14
-
-
Save titaniumbones/0ade63f2c67b2b3c1df8f5c152840268 to your computer and use it in GitHub Desktop.
Post-commit hook to push to gh-pages. Also pushes master to origin. Intended for use in a gitflow worflow, in other cases you might not want ot push master to origin.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
push_branch=master | |
cur_branch=$(git rev-parse --abbrev-ref HEAD) | |
# only run if commit is to master | |
if [ "$cur_branch" == "$push_branch" ]; then | |
if [ "$(git status -uno --porcelain)" ]; then | |
echo "uncommitted changes, can't push"; | |
else | |
git push origin master | |
# recreate gh-pages, checkout, collect sanitized info, remove sensitive info, commit, push, change back to develop | |
git branch -f gh-pages && | |
git checkout gh-pages && node utils/collectjson.js && | |
rm students/*.json && git add utils/allstudents.js && | |
git commit -a -m "sanitize for gh-pages | |
after $(git log -1 --pretty=%h): $(git log -1 --pretty=%B)" && | |
git push -f origin gh-pages --quiet && | |
git checkout develop --quiet && git merge master --quiet | |
fi | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment