如何添加一个预执行钩子来运行我的rspec测试,如果有任何失败,将不会完成提交。我能得到的测试运行,但不能防止pre-commit git钩子如何运行rspec测试并阻止提交?
我抄.git/hooks/pre-commit.sample
到.git/hooks/pre-commit
我已经添加rspec spec
接近底部它们中的任何失败的提交。
测试作为提交的一部分运行......但失败并未停止提交完成。
$ git commit -m'test'
....................................................................................................F.............
Failures:
1) Link Good url SHOULD be valid
Failure/Error: expect(link.valid_get?).to be false #true
expected false
got true
# ./spec/models/link_spec.rb:26:in `block (2 levels) in <top (required)>'
Finished in 32.78 seconds (files took 3.58 seconds to load)
114 examples, 1 failure
Failed examples:
rspec ./spec/models/link_spec.rb:24 # Link Good url SHOULD be valid
[79230846_hook_to_run_tests 6c09570] test
1 file changed, 1 insertion(+)
create mode 100644 x.x
也许我需要一种不同的方式来运行rspec测试,这会引发我需要的非零错误?
目前,它被放置在底部:
...
echo
echo " git config hooks.allownonascii true"
echo
exit 1
fi
rspec spec
exec git diff-index --check --cached $against --
我做的这一切都在一个分支(未掌握)。不知道这是否相关。