Git Commit Hooks
Git Commit Hooks
Active
Pertahankan repository checks saat Custy berjalan secara lokal atau di dalam container dengan operating system berbeda.
Command
[tool.custy.git.hooks]Category
Git Configuration
Quick Command
[tool.custy.git.hooks]Configurationâ
Properties
| Property | Type | Description | Default | Required |
|---|---|---|---|---|
mode | auto | native | pre_commit | Pilih native Git execution atau verified direct pre-commit execution. | auto | No |
Recommended default
toml[tool.custy.git.hooks]
mode = "auto"Behavior Matrix
Hook Resolution
| auto + tidak ada installed hook | Gunakan normal Git commit behavior. pre-commit tidak diwajibkan atau diaktifkan. |
|---|---|
| auto + compatible hook | Biarkan Git menjalankan installed hook secara native. |
| auto + incompatible pre-commit wrapper | Jalankan recognized configured pre-commit stage secara langsung, lalu lewati hanya wrapper yang sudah selesai untuk current commit. |
| auto + incompatible custom hook | Berhenti dengan aman karena Custy tidak dapat membuktikan equivalent execution path. |
| native | Selalu biarkan Git menjalankan installed hooks persis seperti yang tersimpan di repository. |
| pre_commit | Wajibkan .pre-commit-config.yaml dan pre-commit executable, jalankan configured stages secara langsung, dan lanjutkan hanya setelah semuanya lolos. |
Panduan Local dan Docker
- Pertahankan
mode = "auto"untuk kebanyakan project, termasuk project yang tidak menggunakan pre-commit. - Gunakan
nativeketika custom hooks sudah portable pada setiap execution environment. - Gunakan
pre_commitketika project policy mewajibkan direct framework execution. - Instal local support dengan
pip install "custy[hooks]". Production image sudah menyertakanpre-commit. - Direct check yang gagal menghasilkan
PRE_COMMIT_HOOK_FAILEDdan tidak membuat Git commit.