git-commit-vandalism/git-status-script
Junio C Hamano 9804b7dc19 Show the branch name more prominently in "git status".
When not working on "master" branch, remind the user at the beginning
of the status message, not at the end.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-28 12:15:09 -07:00

46 lines
1.0 KiB
Bash
Executable File

#!/bin/sh
. git-sh-setup-script || die "Not a git archive"
report () {
header="#
# $1:
# ($2)
#
"
trailer=""
while read oldmode mode oldsha sha status name newname
do
echo -n "$header"
header=""
trailer="#
"
case "$status" in
M ) echo "# modified: $name";;
D*) echo "# deleted: $name";;
T ) echo "# typechange: $name";;
C*) echo "# copied: $name -> $newname";;
R*) echo "# renamed: $name -> $newname";;
A*) echo "# new file: $name";;
U ) echo "# unmerged: $name";;
esac
done
echo -n "$trailer"
[ "$header" ]
}
branch=`readlink "$GIT_DIR/HEAD"`
case "$branch" in
refs/heads/master) ;;
*) echo "# On branch $branch" ;;
esac
git-update-cache --refresh >/dev/null 2>&1
git-diff-cache -M --cached HEAD | sed 's/^://' | report "Updated but not checked in" "will commit"
committable="$?"
git-diff-files | sed 's/^://' | report "Changed but not updated" "use git-update-cache to mark for commit"
if [ "$committable" == "0" ]
then
echo "nothing to commit"
exit 1
fi
exit 0