From 82a14bffc7ea739f1c68d8697d14d50aa0ae6269 Mon Sep 17 00:00:00 2001 From: Dave Syer Date: Tue, 25 Aug 2015 15:16:55 +0100 Subject: [PATCH] Make ghpages.sh work on a branch --- docs/src/main/asciidoc/ghpages.sh | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/docs/src/main/asciidoc/ghpages.sh b/docs/src/main/asciidoc/ghpages.sh index 91905757..e1063ce3 100755 --- a/docs/src/main/asciidoc/ghpages.sh +++ b/docs/src/main/asciidoc/ghpages.sh @@ -12,13 +12,20 @@ if ! [ -d docs/target/generated-docs ]; then exit 0 fi +# Find name of current branch +################################################################### +branch=$TRAVIS_BRANCH +[ "$branch" == "" ] && branch=`git rev-parse --abbrev-ref HEAD` +target=. +if [ "$branch" != "master" ]; then target=./$branch; mkdir -p $target; fi + # Stash any outstanding changes ################################################################### git diff-index --quiet HEAD dirty=$? if [ "$dirty" != "0" ]; then git stash; fi -# Switch to gh-pages branch to sync it with master +# Switch to gh-pages branch to sync it with current branch ################################################################### git checkout gh-pages @@ -26,21 +33,22 @@ for f in docs/target/generated-docs/*; do file=${f#docs/target/generated-docs/*} if ! git ls-files -i -o --exclude-standard --directory | grep -q ^$file$; then # Not ignored... - cp -rf $f . - git add -A $file + cp -rf $f $target + git add -A $target/$file fi done -git commit -a -m "Sync docs from master to gh-pages" +git add -A README.adoc || echo "No change to README.adoc" +git commit -a -m "Sync docs from $branch to gh-pages" || echo "Nothing committed" # Uncomment the following push if you want to auto push to -# the gh-pages branch whenever you commit to master locally. +# the gh-pages branch whenever you commit to branch locally. # This is a little extreme. Use with care! ################################################################### -git push origin gh-pages +git push origin gh-pages || echo "Cannot push gh-pages" -# Finally, switch back to the master branch and exit block -git checkout master +# Finally, switch back to the current branch and exit block +git checkout $branch if [ "$dirty" != "0" ]; then git stash pop; fi exit 0