#!/bin/sh | |
: ${GIT_DIR=.git} | |
PARENTS="HEAD" | |
if [ -f $GIT_DIR/MERGE_HEAD ]; then | |
echo "#" | |
echo "# It looks like your may be committing a MERGE." | |
echo "# If this is not correct, please remove the file" | |
echo "# $GIT_DIR/MERGE_HEAD" | |
echo "# and try again" | |
echo "#" | |
PARENTS="HEAD -p MERGE_HEAD" | |
fi > .editmsg | |
git-status-script >> .editmsg | |
if [ "$?" != "0" ] | |
then | |
cat .editmsg | |
exit 1 | |
fi | |
${VISUAL:-${EDITOR:-vi}} .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 $PARENTS) || exit 1 | |
echo $commit > $GIT_DIR/HEAD | |
rm -f -- $GIT_DIR/MERGE_HEAD |