#============================================================================== # Copyright (c) 2017 Daniel James # # Use, modification and distribution is subject to the Boost Software # License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at # http://www.boost.org/LICENSE_1_0.txt) #============================================================================== #!/usr/bin/env bash set -e # Change to the quickbook root directory cd $(dirname $0) cd .. # Git settings remote=git@github.com:boostorg/quickbook.git branch=gh-pages main() { git fetch "$remote" "$branch:$branch" b2 -aq doc//fully-standalone write_fast_import gh-pages | git fast-import --date-format=now --quiet git push "$remote" "$branch" } write_fast_import() { committer="$(git config user.name) <$(git config user.email)>" commit_message="Rebuild documentation" branch=$1 # Start commit echo "commit refs/heads/${branch}" echo "committer ${committer} now" echo "data ${#commit_message}" echo $commit_message echo "from ${branch}" echo "merge HEAD" # Delete everything and rebuild tree from scratch. echo "deleteall" # Copy all files from HEAD git ls-tree -r HEAD | while read mode type hash path ; do echo "M $mode $hash $path" done # Preserve index.html from the github pages branch git ls-tree $branch -- index.html | while read mode type hash path ; do echo "M $mode $hash $path" done # Check in documentation find doc/html -type f | while read path; do size=$(wc -c "$path") echo "M 100644 inline $path" echo "data $size" cat "$path" echo done } main