Пока еще не доковырял puppet, решил все-таки черкануть последовательность действий в баше, чтобы быстро запустить symfony2-проект.
XFCE Dark Theme
Нашел себе прикольную темную темя для XFCE: http://linux.softpedia.com/progDownload/Xfce-dark-Download-41974.html
Doctrine cascade-persist и orphan-removal
Подолбался несколько часов с вылавливанием одного бага при сохранении вложенной сущности. При удалении вложенной one-to-many сущности удалялась и сама сущность.
Вывод: никогда, НИКОГДА не пихайте cascade-all и orphan-removal=true, хорошенько не подумав, к чему это может привести 🙂
Upd. Да-да, ёлы-палы http://docs.doctrine-project.org/en/latest/reference/best-practices.html#use-cascades-judiciously
Добавляем executable файл в git под виндой
1 | git update-index --chmod=+x script.sh |
Делаем патч из git-коммита
Берем хэш коммита
1 | $ git format-patch -1 bef6bde |
Получаем файлик вроде 0001-added-model-year-to-dealer-factors.patch
Пихаем его в корень проекта, где собираемся развернуть.
Проверяем, что патч может накатиться:
1 | $ git apply --check 0001-added-model-year-to-dealer-factors.patch |
Можно посмотреть, что куда пойдет:
1 2 3 4 | $ git apply --stat 0001-added-model-year-to-dealer-factors.patch /inc/Dealer.php | 10 ++++-- ... 8 files changed, 56 insertions(+), 13 deletions(-) |
Накатываем:
1 | $ git apply 0001-added-model-year-to-dealer-factors.patch |
Готово!
Ext.Img событие onload
Как ни странно, у Ext.Img отсутствует event onload, который сигнализирует о том, что картинка загружена. Добавим это событие сами
Рекурсивное удаление папок .svn
1 2 | cd /path/to/project find . -name ".svn" -type d -exec rm -vrf {} \; |
Ломают билды symfony2
Во дают, аж два раза подряд сломать билд.
Укрощаем logcheck
Сегодня поговорим о logcheck — пакете, который, периодически просматривает логи на предмет аномальных записей (попытки взлома, демон стал плохо себя вести и т.д.), и при их обнаружении уведомляет администратора по почте.