godot/misc/hooks
Rémi Verschelde d09b33dab2
clang-format: Enable --Wno-error=unknown for compat with older versions
This prevents errors when encountering options which have been defined in newer
versions of clang-format, and are invalid in the YAML for the old version.

Bump minimum supported clang-format version to 12 (where `--Wno-error=unknown`
was added).

Use clang-format 12 on CI (13 is not available yet on the Ubuntu 20.04 images).

(cherry picked from commit 55d05565d0)
2021-10-25 11:16:13 +02:00
..
canonicalize_filename.sh Style: Cleanup uses of double spaces between words 2021-06-07 12:06:59 +02:00
pre-commit Hooks: Add pre-commit hook for psf/black formatting 2020-06-10 15:30:52 +02:00
pre-commit-black Git Hooks: Suppress "which" error messages. 2020-06-10 15:33:27 +02:00
pre-commit-clang-format clang-format: Enable --Wno-error=unknown for compat with older versions 2021-10-25 11:16:13 +02:00
pre-commit-makerst Fixed errors in makerst pre-commit hook 2020-04-06 18:16:11 +02:00
README.md Pre-commit hook instructions on Windows 2020-06-10 15:32:18 +02:00
winmessage.ps1 Cleanup: Remove executable bit from files which don't need it 2021-01-26 17:00:15 +01:00

Git hooks for Godot Engine

This folder contains Git hooks meant to be installed locally by Godot Engine contributors to make sure they comply with our requirements.

List of hooks

  • Pre-commit hook for clang-format: Applies clang-format to the staged files before accepting a commit; blocks the commit and generates a patch if the style is not respected. You may need to edit the file if your clang-format binary is not in the PATH, or if you want to enable colored output with pygmentize.
  • Pre-commit hook for black: Applies black to the staged Python files before accepting a commit.
  • Pre-commit hook for makerst: Checks the class reference syntax using makerst.py.

Installation

Copy all the files from this folder into your .git/hooks folder, and make sure the hooks and helper scripts are executable.

Linux/MacOS

The hooks rely on bash scripts and tools which should be in the system PATH, so they should work out of the box on Linux/macOS.

Windows

clang-format
black
  • Python installation: make sure Python is added to the PATH
  • Install black - in any console: pip3 install black