Except that this does not work. I tried the following at the end of my bindings before committing:
exec git diff-index --check --cached $against --
but changes made to these hooks are still not made (at least in git 1.7.3.4).
If you really want changes to come in, you must explicitly
git add "$file"
for each file that you changed during the pre-commit phase.