#!/usr/bin/env bash REMOTE=$(pwd)/demo_repo unset GIT_DIR # Helper functions set_user() { export GIT_AUTHOR_EMAIL="$1@chromium.org" export GIT_AUTHOR_NAME="$1" export GIT_COMMITTER_EMAIL="$1@chromium.org" export GIT_COMMITTER_NAME="$1" } set_user 'local' # increment time by X seconds TIME=1397119976 tick() { TIME=$[$TIME + $1] export GIT_COMMITTER_DATE="$TIME +0000" export GIT_AUTHOR_DATE="$TIME +0000" } tick 0 # a commit c() { silent git commit --allow-empty -m "$1" tick 10 } praw() { echo -e "\x1B[37;1m$ $@\x1B[m" } # print a visible command (but don't run it) pcommand() { praw "$(python -c '\ import sys, pipes; \ print " ".join(map(pipes.quote, sys.argv[1:]))' "$@")" } # run a visible command run() { pcommand "$@" "$@" } comment() { echo "###COMMENT### $@" } # run a command and print its output without printing the command itself output() { "$@" } # run a silent command silent() { if [[ $DEBUG ]] then "$@" else "$@" > /dev/null 2> /dev/null fi } # add a file with optionally content add() { local CONTENT=$2 if [[ ! $CONTENT ]] then CONTENT=$(python -c 'import random, string; \ print "".join(random.sample(string.lowercase, 16))') fi echo "$CONTENT" > $1 silent git add $1 } # Add a special callout marker at the given line offset to indicate to # filter_demo_output.py to add a callout at that offset. callout() { echo -e "\x1b[${1}c" }