L’Outil Surpuissant pour Exploser ton Chiffre d'Affaires en 2025 !
Vérifiez la norme de codage Drupal par phpcs dans le crochet de pré-engagement git

Dans ce didacticiel, vous apprendrez à améliorer le code personnalisé, le thème et le module, ainsi que le développement général du code en utilisant le hook de pré-commit sur git. Git pré-commit valide les normes de codage Drupal sur les fichiers avant de les valider et renvoie un message pour corriger chaque ligne de code sur les fichiers ayant des erreurs.
Suivez les étapes suivantes pour configurer le hook git pré-commit avec les normes de codage Drupal :
- Créez un répertoire de crochets sur le projet racine.
- Créez un fichier de pré-commit dans le répertoire hooks.
- Ajoutez le code de pré-commit ci-dessous au fichier hooks/pre-commit.
#!/bin/bash STANDARD="Drupal" BIN="./vendor/bin" echo echo "Drupal Coder pre-commit hook – commit with the --no-verify option to skip the hook" echo # Check whether PHP_CodeSniffer can be found if [ ! -f "$BIN/phpcs" ] then echo "Drupal Coder not found – is it installed? 'composer require drupal/coder'" echo exit 1 fi # Retrieve staged files FILES=$(git diff --cached --name-only --diff-filter=ACMR HEAD) # Run the sniffer echo "Running Drupal Coder." echo PHPCS=("$BIN/phpcs" "--standard=$STANDARD" "--filter=gitstaged" "--encoding=utf-8" "-p" ".") "${PHPCS[@]}" # Syntax Error if [ $? != 0 ] then echo "Please fix each violations detected." echo exit 1 fi # Syntax OK if [ $? == 0 ] then echo "No violations detected" echo exit 0 fi
Ajoutez des commandes PHP dans la section scripts du fichier composer.json.
"scripts": { "post-install-cmd": [ "php -r \"copy('hooks/pre-commit', '.git/hooks/pre-commit');\"", "php -r \"chmod('.git/hooks/pre-commit', 0755);\"" ] }
Exécutez maintenant Installation du compositeur dans votre répertoire de projet
L’installation de Composer va mv hooks/pre-commit fichier vers .git/hooks/pre-commit.
Comment l’utiliser
git commit -m "The commit message."
Celui-ci va exécuter Drupal Coder sur chaque fichier et renvoie des messages sur le terminal en cas de détection d’erreurs sur les fichiers.
Source link