我想在任何提交之前设置一个预先提交的钩子来测试我的项目,但我找不到如何确保只有HEAD(来自当前提交的补丁)被测试,而不是当前working_tree(在大多数情况下,这对我来说很脏)。如何测试当前提交而不是工作树?
找到的解决方案:
找到此链接并结束了以下操作。
http://newartisans.com/2009/02/building-a-better-pre-commit-hook-for-git/
# Checkout a copy of the current index into MIRROR
git checkout-index --prefix=$TMPDIR/ -af
# Remove files from MIRROR which are no longer present in the index
git diff-index --cached --name-only --diff-filter=D -z HEAD | \
(cd $TMPDIR && xargs -0 rm -f --)
你是什么意思“测试我的回购”? –
运行我的单元测试 – Sedrik
只要你的单元测试是“git aware”并且可以访问'HEAD'版本而不是你的工作树,我看不到问题。 –