1
我有一個吞噬任務test
,它使用摩卡來運行我的單元測試。如果測試失敗,則返回來自預先提交GIT Hook的失敗代碼
我想運行單元測試作爲GIT pre-commit
hook的一部分。
所以基本上我pre-commit
文件看起來像這樣:
#!/bin/bash
gulp test
我的問題是,即使測試失敗,提交而成。如何從我的pre-commit
文件中檢測到測試失敗?
我有一個吞噬任務test
,它使用摩卡來運行我的單元測試。如果測試失敗,則返回來自預先提交GIT Hook的失敗代碼
我想運行單元測試作爲GIT pre-commit
hook的一部分。
所以基本上我pre-commit
文件看起來像這樣:
#!/bin/bash
gulp test
我的問題是,即使測試失敗,提交而成。如何從我的pre-commit
文件中檢測到測試失敗?
Bash腳本的退出代碼是執行的最後一個命令的退出代碼。 如果gulp test
失敗, 它將以非零值退出, 表示失敗, 並且提交應該中止。
你確定鉤子腳本得到執行嗎?
.git/hooks/pre-commit
假設這些條件都滿足, 張貼預期應該工作的腳本。 如果沒有,則修改它以幫助調試併發布您希望失敗的示例提交的輸出。
#!/bin/bash
gulp test
x=$?
echo exit code = $x
exit $x
您需要得到'gulp test'的結果。如果成功了,那麼在'pre-commit'中退出0或者什麼也不做。如果失敗,則以非零數字退出。如果測試失敗, – ElpieKay
是否使用非零代碼進行吞吐?它是如何返回失敗的呢? – max630