Недавно обновил проект PHP для использования исходной папки и папки сборки. Мы используем Gulp для сборки проекта из папки ‘src’ в папку ‘build’ после извлечения папки ‘src’ и файлов конфигурации проекта из нашего репозитория Git.
project_root
|
├── src
|
├── build
|
└── {project configuration files}
Разработчики как внешнего, так и внутреннего интерфейса в настоящее время используют «gulp watch», которые мы настроили для синхронизации наших папок «src» и «build».
Одна из самых больших неприятностей, с которыми мы столкнулись, заключается в том, что при отладке нашего проекта в браузере мы часто открываем файл-нарушитель, в котором сообщается об ошибке, и манипулируем кодом, пока он не заработает в браузере. Тем не менее, больше раз, чем я хотел бы сосчитать, мы вносим изменения в файл в папке «build» во время отладки, а затем мы должны вручную вносить изменения в папку «src» (что часто сначала игнорируется) ,
Есть ли способ исправить эту проблему рабочего процесса?
Я думал о создании двух файловых наблюдателей для обнаружения изменений в папках ‘build’ и ‘src’ соответственно. Когда одно из часов обнаружит изменение, выключите наблюдатель других папок, обработайте измененные файлы и синхронизируйте другую папку, а затем снова включите наблюдатель другой папки.
(Это похоже на кувалду.)
У нас PHPStorm и Sublime Text 3 в зависимости от разработчика. В Sublime Text я просто исключаю папку «build» из проекта, чтобы случайно не открыть ее по умолчанию. (Однако я случайно открываю файлы папок «build» при слишком частой отладке PHP.)
Возможно, способ работы со структурой проекта в целом нуждается в работе. Разработка внешнего интерфейса и бэкэнда часто осуществляется согласованно. Какие-либо предложения?
После того, как в течение нескольких часов после публикации этой статьи я дико взмахнул руками, я нашел ответ на свою проблему.
Оказывается, лучший способ справиться с этим — использовать Подход IDE и создайте пути для вашего проекта:
'../src'
папка для '../build'
Настройки »Настройки пакета» Xdebug »Настройки — Пользователь
{
"path_mapping": {
"C:/wamp/www/fcweb-2/build" : "C:/wamp/www/fcweb-2/src"}
}
После того, как ваши пути сопоставления настроены, вы можете успешно установить точку останова в файле php в вашем '../src'
папка запустить сеанс отладки и файл в вашем '../build'
папка будет остановлена в том же месте.
Других решений пока нет …