#!/bin/bash -eu# TODO: Only colorize messages given a suitable terminal.# FIXME: Handle case in which no stash entry is created due to no changes.printf"\e[30m=== PRE-COMMIT STARTING ===\e[m\n"git stash save --quiet --keep-index --include-untrackedif go build -v ./... && go test -v -cover ./... && go vet ./... && golint . && travis-lint; thenresult=$?printf"\e[32m=== PRE-COMMIT SUCCEEDED ===\e[m\n"elseresult=$?printf"\e[31m=== PRE-COMMIT FAILED ===\e[m\n"figit stash pop --quietexit$result