#!/bin/sh git-status-script > .editmsg if [ "$?" != "0" ] then cat .editmsg exit 1 fi ED=${VISUAL:$EDITOR} ED=${ED:vi} $ED .editmsg grep -v '^#' < .editmsg | git-stripspace > .cmitmsg [ -s .cmitmsg ] || exit 1 tree=$(git-write-tree) || exit 1 commit=$(cat .cmitmsg | git-commit-tree $tree -p HEAD) || exit 1 echo $commit > .git/HEAD