-TAG="$(git describe --exact-match --match "[0-9]*" HEAD 2>/dev/null)"
set -o errexit -o nounset
-if [ "$TRAVIS_OS_NAME" == "linux" -a "$CC" == "gcc" -a "$TRAVIS_SECURE_ENV_VARS" == "true" -a "$TAG" != "" ]
-then
- DOCSDIR=build-docs
+if [ "$TRAVIS_OS_NAME" != "linux" -o "$CC" != "gcc" -o "$TRAVIS_SECURE_ENV_VARS" != "true" ]; then
+ exit
+fi
+
+BRANCH="$(TRAVIS_BRANCH)"
+TAG="$(git describe --exact-match --match "[0-9]*" HEAD 2>/dev/null)"
+
+if [ "x$TAG" == x ]; then
REVISION=$(git rev-parse --short HEAD)
+else
+ REVISION=$TAG
+fi
- rm -rf $DOCSDIR || exit
- mkdir $DOCSDIR
- cd $DOCSDIR
+DOCSDIR=build-docs
- cp ../docs/html/* .
+rm -rf $DOCSDIR || exit
+mkdir $DOCSDIR
+cd $DOCSDIR
- git init
- git config user.name "Travis CI"
- git config user.email "travis@harfbuzz.org"
- git remote add upstream "https://$GH_TOKEN@github.com/$TRAVIS_REPO_SLUG.git"
- git fetch upstream
- git reset upstream/gh-pages
+cp ../docs/html/* .
- touch .
- git add -A .
- git commit -m "Rebuild docs for $REVISION"
- git push -q upstream HEAD:gh-pages
-fi
+git init
+git config user.name "Travis CI"
+git config user.email "travis@harfbuzz.org"
+git remote add upstream "https://$GH_TOKEN@github.com/$TRAVIS_REPO_SLUG.git"
+git fetch upstream
+git reset upstream/gh-pages
+
+touch .
+git add -A .
+git commit -m "Rebuild docs for $REVISION"
+git push -q upstream HEAD:gh-pages