我有一個自定義的預提交掛鉤,如果較早的掛鉤失敗,我想跳過它。如果較早的掛鉤失敗,pre-commit.log則會生成一個名為的日志檔案。
A.pre-commit-config.yaml可能看起來像這樣:
repos:
- repo: https://gitlab.com/pycqa/flake8
rev: 3.9.2
hooks:
- id: flake8
log_file: pre-commit.log
- repo: local
hooks:
- id: skript
name: skript
entry: bash skript.sh
language: system
log_file: pre-commit.log
我的 bashskript.sh看起來像這樣:
if [ -f "pre-commit.log" ]; then
echo "Error in earlier pre-commit! We skip this script."
echo "See 'pre-commit.log' for detailed information."
exit 1
else
echo "All pre-commits successful."
# some other code
fi
現在我檢查“pre-commit.log”是否存在,如果存在,我回傳exit 1。因此,這個鉤子的輸出是Failed. 但我更喜歡這種狀態Skipped,因為沒有失敗。
我的目標是在控制臺或日志檔案中查看文本Skipped,就像這張圖片中的jupyter-notebook-cleanup. 如果我寫exit 0我Passed喜歡 forisort并且black如果我回傳exit 1或另一個更大的數字 1 我Failed喜歡 for flake8。

我怎樣才能得到訊息Skipped?
uj5u.com熱心網友回復:
沒有辦法影響該文本Skipped
Skipped僅在以下情況下出現:
- 鉤子沒有運行,因為它的鉤子出現在
SKIP環境變數中 - 沒有匹配的檔案
files//并且是types(默認值)和是(默認值)types_orpass_filenamestruealways_runfalse
你最好的選擇是exit 0在非失敗的情況下,這將出現Passed在輸出中
免責宣告:我撰寫了您正在使用的預提交工具
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/431866.html
標籤:重击 混帐 预提交钩子 pre-commit.com
