Ребят, подскажите, как у вас построен веб-разработки?
Раньше, когда работал с WP - банально подключался к FTP и все необходимые файлы правил в sublime, сохраняя их.
Далее перешёл на Битрикс и PhpStorm - удобно. Есть FTP из коробки, на маленьких проектах - прямо там и работал, на больших - делал локальную копию, выгружал изменения.
Сейчас проекты выросли, много зависимостей. Я перешёл на VSCode (т.к. phpstorm оплачивать больше нет возможности), он мне очень понравился - но я совершенно не понимаю, как упростить себе процесс работы. Я фактически каждый файлик редактирую отдельно, сразу сохраняя.
Поделитесь пожалуйста великими секретами, как вы работаете? Желательно с примером, вплоть до выгрузки на лайв сервер.
Буду очень вам благодарен!
TheAndrey7, продлили до 1 ноября, но учитывая ситуацию - решил перейти на бесплатную IDE заранее. Т.е. это было не причиной ухода, а скорее поводом, немножко некорректно описал в топике.
cerbiz_kolosov, не просто продлили, а еще предоставили фоллбэк версию на момент окончания подписки. То есть 1 ноября у вас останется лицензионная версия существующая на тот момент. Как минимум год ею вполне можно будет пользоваться (пока в php внедряются новые фишки). А за год-полтора всякое может произойти.
Так что зря отказались, как мне кажется.
Сергей delphinpro, солидарен. По той же причине фактически вынудили свежий фш брать с торрента т.к. лицензия продлиться отказалсь
Эххх, а я так долго себя перевоспитывал на "софт надо покупать, это труд - а труд должен оплачиваться")
vscode прекрасно настраивается на лайв sftp LiveServer remote-ssh phpserver
можно в локальной папке сервер на лету запустить , а можно на FTP править - зависит от задачи
phpserver + LiveServer выглядят так, если запустить просто из папки.
любой ввод символа вызывает перезагрузку страницы, но можно отключить.
с SFTP в самом начале нужно обязательно выбрать(подготовить) локальную папку, куда зеркалируется код с сервера.
Rst0, вау, красивое) Всегда хотел кодить в лайве)
Это возможно только с отдельными скриптами/php файлами и html? Правильно понимаю?
Он же подгружает конкретно редактируемый файл, да?
Т.е. с какой-либо CMS работать невозможно т.к. не подключаются напрямую темплейты/скрипты/стили?
если, к примеру, в файле index.php есть include('header.php');
то он его подхватит и относительные пути тоже.
абсолютные пути ( var/www/html/ ), естественно нет.
в Windows должен быть установлен php и присутствовать в PATH
Как вариант для битрикса:
На сервере:
1. Разворачиваете git
2. Убираете в git-игнор upload, bitrix кэши, настройки подключения к базе
На локальной машине:
1. Если винда: ставите open server/denwer/или что-то похожее. Если линукс/мак: ставите php, mysql, apache/nginx. Стараетесь, чтобы версии пакетов совпали с теми, которые у вас на сервере. В open server можно удобно выбрать в настройках.
2. Разворачиваете локальную копию git с вашего сервера.
3. Скачиваете дамп базы, заливаете его локально. Скачиваете недостающие файлы для битрикса. Пишите локальный конфиг для доступа к бд в битриксе.
Если все прошло удачно у вас будет сайт на сервере как он сейчас есть и его локальная копия у вас на компьютере. Оба связаны гитом.
Работаете с локальной копией в удобном вам редакторе. Результаты соответственно тоже видите локально. При необходимости прокидываете изменения через гит на сервер.
Остаются нерешенными 2 вопроса:
1. Работа с бд. Копайте в сторону плагинов битрикса для миграций.
2. Файлы закинутые на сайт через админку битрикса.
Поюсы: у вас будет гит и все его плюшки. Локальный поиск по всему проекту. Возможность изолировано работать с проектом не боясь все сломать на рабочем сервере.
Минусы: миграции бд. Сложная организация работы. Прожорливость к ресурсам локальной машины.
P.s. если пойдете по этому пути, погуглите как скрывать от поиска в VS Code директрии проекта. Отключите поиск в upload и битрикс кэшах.
Благодарю, очень крутой ответ)
По совету выше - решил вернуться к phpstorm (лицензия оказывается продлена до ноября).
Впервые поставил linux, опять же, впервые поставил git. Разобрался с исключениями - и уже работаю в новом "окружении")
Честно признаться - видимо git - тот самый кусочек пазла, которого не хватало. Так уверенно я костыли ещё не писал в коде, всё, страха нет ;D
Сейчас разбираюсь с git на серверах)
Docker для локальной разработки, phpstorm для кода (там же работа с гитом), phpMyAdmin для бд. Этого уже достаточно, различные инструменты есть в ide или же отдельным приложением (postman, fork и тд)
Удостоверились в локальном коде - подливаете на дев сервер и проверяете работоспособность, после чего на прод
Если редактируешь напрямую с сервера, необязательно должен быть FTP в редакторе.
Для простых правок нормально работает WinSCP+Sublime. Для саблайма только надо дописать правило автосохранения при потере фокуса. A WinSCP его сам зальёт на сервер. "save_on_focus_lost": true,
Если по фен-шую, то надо работать через Git. Соответственно с локальным окружением.
Именно так и работал все время. Но сейчас уже и личные проекты разрослись так, что, например хочется, чтобы IDE знала весь проект и могла мне подсказать, откуда что подтягивается. В крайнем случае банальный поиск по проекту чтобы был. Вот и не могу понять порядок действий, работать на локалке (с точной копией лайва) - выгружая потом изменения? А что мне поможет выгружать именно измененные файлы?)
Возможно звено, которого мне не достает - это git, только приступил к изучению.
Но в git я отдаю commit с локалки, лайв же не умеет подтягивать изменения с него?
Помогите, я искрю на этом моменте :(
Особенно когда начинаем работать в паре с коллегой начинается "ты закончил править? Да, сохранил, открывай"
Это же не нормально)
cerbiz_kolosov, тут в 2х словах не рассказать. Тем более, как это устроено в Битрикс. Наверняка есть какие-то материалы в инете. У Битрикса вроде неплохая документации. Поищите про командную разработку.
cerbiz_kolosov, поищи про командную разработку через Git. По-другому никак. Время потратить на обучение придется.
Для Битрикс наверняка буду особенности. Например надо исключать определенные директории и файлы из синхронизации.