2
0
mirror of https://github.com/boostorg/website.git synced 2026-01-19 04:42:17 +00:00
Files
website/site-tools/git-prep-beta.sh
Daniel James 8abdbd3938 Remove a load of old TODO notes
boost_archive.php:

For mime types, the current list seems fine, and a full list doesn't
seem feasable.

boost_filter_text.php:

For supporting other character sets, could possibly use
mb_detect_encoding to guess the file's encoding, but it's not currently
installed on the server, and I think guesses are probably no better than
just assuming everything is UTF-8. The alternative would be some
mechanism to specify a file's (path's?) encoding, but I'm sure that can
be done if the need arises.

boost_library.php:

If it turns out that a better exception is needed, then it will be
handled then, so I'm not concerned with that TODO note.

boost_pages.php:

Sourceforge is redirecting downloads to the right place, so I'll not
bother with '/download' at the end. It's probably better if the download
URLs have the right filename.

boost_simple_template.php:

I don't think the simple template class really needs to support tricky
edge cases, so I'll just leave that alone.

doc/libraries.php:

I don't think anyone's desperate to see the library list for ancient
versions. If they are, they can get the it in json format using:
http://www.boost.org/doc/libraries.json.php?version=1.11.1

site-tools/git-prep-beta.sh:

Coming back to this, I think the answer is no. A change on master is
only really made when it has been pushed to remote, if it's only local
then it might get rebased.

This script doesn't actually get much use now that there are long
standing unmerged changes in beta, but it used to work well for me.

site-tools/update-doc-list.php:

Other TODO note was to make the script a little more automatic when run
against a local git tree, but I don't think that's a use case to support
in general. The tree might not be fully synced, or might be checked out
from a tag, which would be harder to check.
2016-11-30 01:53:57 +00:00

69 lines
1.2 KiB
Bash
Executable File

#!/bin/bash -e
# Do a fast forward merge without checking out the destination branch.
git_ff_merge() {
from=$1
to=$2
if [[ $(git symbolic-ref --short -q HEAD) == $to ]]
then
git merge -q --ff-only $from
else
git fetch -q . $from:$to
fi
}
# Goto the root of the website
cd $(dirname $0)/..
# Check if tree is clean
if ! git diff-index --quiet HEAD --
then
echo "Tree is dirty."
exit 1
fi
echo "- Fetching from origin"
git fetch -q origin
echo "- Update local beta from origin"
if ! git_ff_merge origin/beta beta
then
echo "Unable to fast forward merge from origin/beta."
echo
echo "Changes on origin/beta:"
echo
git log --reverse --pretty=oneline beta..origin/beta
echo
echo "Changes on beta:"
echo
git log --reverse --pretty=oneline origin/beta..beta
exit 1
fi
echo "- Check for unmerged changes in beta"
if [ $(git rev-parse beta) != $(git merge-base origin/master beta) ]
then
echo "Unmerged changes on beta:"
echo
git log --reverse --pretty=oneline origin/master..beta
exit 1
fi
echo "- Update beta from origin/master"
git_ff_merge origin/master beta
git push origin beta
git checkout beta
echo "- Beta is now up to date."