Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
С кодстайлом лучше все-таки php-cs-fixer или даже оба (хотя после фиксера phpcs только длину строк ловит)
Фиксер, на мой взгляд, надо запускать руками разработчику, а не исправлять код в процессе проверок.
Мало ли что исправиться не так как положено.
никто не говорит о фиксе в ходе проверок. На CI надо с --dry-run запускать, а разработчик может себе git hook какой сделать что бы не забывать.
#!/bin/bash
echoerr() { echo -e "\e[1;31m$@\e[0m" 1>&2; }
git diff --diff-filter=MAT --name-only --cached | while read line;
do
filename=$(tempfile)$(echo $line | sed 's/\//_/g');
git show :$line > $filename;
if ! eval 'phpcs --standard=./vendor/escapestudios/symfony2-coding-standard/Symfony2 --extensions=php --ignore=Tests $filename > /dev/null'; then
if eval 'phpcs --standard=./vendor/escapestudios/symfony2-coding-standard/Symfony2 --extensions=php --ignore=Tests $line > /dev/null'; then
echoerr "!!!!ВНИМАНИЕ!!!!";
echoerr "Кажется вы забыли сделать git add $line после того как сделали fix кодинг стайла, посмотрите git status:";
git status;
else
#print more information about cs
phpcs --standard=./vendor/escapestudios/symfony2-coding-standard/Symfony2 --extensions=php --ignore=Tests $line
fi;
exit 1;
fi;
rm $filename;
done

Ну вот вам мой прекоммит хук для php-cs-fixer. Только вместо "ошибок" что мы не сделали git add он сам это делает.
Малюсенький CI вашего Symfony проекта за 2 минуты