Skip to content

Instantly share code, notes, and snippets.

@thinca
Forked from k0kubun/trailing-whitespace
Last active January 4, 2016 07:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save thinca/8591461 to your computer and use it in GitHub Desktop.
Save thinca/8591461 to your computer and use it in GitHub Desktop.
#!/bin/sh
if git-rev-parse --verify HEAD >/dev/null 2>&1
then
against=HEAD
else
# Initial commit: diff against an empty tree object
against=4b825dc642cb6eb9a060e54bf8d69288fbee4904
fi
for diff in `git diff-index --check --cached ${against} -- |
grep 'trailing whitespace' | sed 's/: trailing whitespace.//'`
do
file=`echo "${diff}" | sed 's/:[^:]*$//'`
line=`echo "${diff}" | sed 's/^[^:]*://'`
ext="${file##*.}"
case "${ext}" in
cs|rb|sh)
tempfile=${file}.tempfile
sed -e "${line}"'s/\s*$//' "${file}" >"${tempfile}"
mv "${tempfile}" "${file}"
git add "${file}"
;;
esac
done
exit 0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment