2020-10-30 07:31:55 -04:00
Install pre-commit Hook for ESP-IDF Project
===========================================
2023-07-31 07:39:28 -04:00
:link_to_translation:`zh_CN:[中文]`
2020-11-03 21:23:47 -05:00
Required Dependency
-------------------
2023-07-19 05:08:24 -04:00
Python 3.8.* or above. This is our recommended Python version for IDF developers.
2020-11-03 21:23:47 -05:00
2023-07-31 07:39:28 -04:00
If you still have Python versions not compatible, update your Python versions before installing the pre-commit hook.
2020-11-03 21:23:47 -05:00
2020-10-30 07:31:55 -04:00
Install pre-commit
------------------
Run `` pip install pre-commit ``
2023-07-31 07:39:28 -04:00
Install pre-commit Hook
2020-10-30 07:31:55 -04:00
-----------------------
2023-07-31 07:39:28 -04:00
1. Go to the IDF project directory.
2020-10-30 07:31:55 -04:00
2023-06-28 07:41:49 -04:00
2. Run `` pre-commit install --allow-missing-config -t pre-commit -t commit-msg `` . Install hook by this approach will let you commit successfully even in branches without the `` .pre-commit-config.yaml ``
2020-10-30 07:31:55 -04:00
3. pre-commit hook will run automatically when you're running `` git commit `` command
2023-07-31 07:39:28 -04:00
Uninstall pre-commit Hook
-----------------------------
2021-04-19 06:14:25 -04:00
Run `` pre-commit uninstall ``
2020-10-30 07:31:55 -04:00
What's More?
------------
2021-09-08 11:38:14 -04:00
For detailed usage, please refer to the documentation of pre-commit_.
2020-10-30 07:31:55 -04:00
2022-04-28 02:34:20 -04:00
.. _pre-commit: https://pre-commit.com/
2020-10-30 07:31:55 -04:00
Common Problems For Windows Users
---------------------------------
2021-09-08 11:38:14 -04:00
`` /usr/bin/env: python: Permission denied. ``
2020-10-30 07:31:55 -04:00
2023-07-31 07:39:28 -04:00
If you're in Git Bash, please check the Python executable location by run `` which python `` .
2020-10-30 07:31:55 -04:00
If the executable is under `` ~/AppData/Local/Microsoft/WindowsApps/ `` , then it's a link to Windows AppStore, not a real one.
2023-07-31 07:39:28 -04:00
Please install Python manually and update this in your `` PATH `` environment variable.
2021-09-08 11:38:14 -04:00
2023-07-31 07:39:28 -04:00
Your `` USERPROFILE `` contains non-ASCII characters
2021-09-08 11:38:14 -04:00
`` pre-commit `` may fail when initializing an environment for a particular hook when the path of `` pre-commit `` 's cache contains non-ASCII characters. The solution is to set `` PRE_COMMIT_HOME `` to a path containing only standard characters before running pre-commit.
- CMD: `` set PRE_COMMIT_HOME=C:\somepath\pre-commit ``
- PowerShell: `` $Env:PRE_COMMIT_HOME = "C:\somepath\pre-commit" ``
- git bash: `` export PRE_COMMIT_HOME="/c/somepath/pre-commit" ``