Как стать автором
Обновить

Комментарии 25

И как по скорости? По опыту, проброс иксов в пределах Питера не всегда дает нормальную отзывчивость интерфейса.
В принципе, довольно неплохо, работать можно. Сильно не использовал, но особых тормозов не заметил. Для девелопмента подходит — там думать нужно больше чем писАть.
Есть проблемы с буфером обмена — нестабильно работает. Сначала, вроде как, отрабатывает несколько раз, а потом перестает работать.
А VirtualBox уже не модно?
Спасибо, посмотрю.
Посмотрел. Тоже подходит. Нужно будет попробовать. Спасибо :)
И лучше ставьте что-то легковестное, LXDE, например.
Плюс данного решения — независимость от ОС хоста. Хотите, можете и под Виндой остаться, при этом все ваше окружение для разработки будет на Linux. А коли решите перейти, например, на Ubuntu и хостовой ОС, то сможете это сделать без перенастроек гостевой системы — достаточно установить VirtualBox.
Вот это решение однако )))
Подскажите, а для чего могло понадобится запускать через удаленный терминал phpStorm вообще?
Почему не подключится к проекту через ssh, если нет возможности разворачивать проект на виртуалке или локалке?

Просто честно не укладывается в голове, не могу придумать причину для чего надо идти таким путем…
PhpStorm — это мой IDE (или мое?). Использую я его для разработки модулей к Magento. Сейчас решаю задачу, как разворачивать и поддерживать Magento-проект с моими модулями, лежащими в Git-репозитории. Смотрел в сторону Magento Composer, но он работает на hardlinks, которые есть в *nix-системах, но не очень есть в win. Поэтому нужно было принципиальное решение. Вообще-то целью статьи было описание последовательности действий при работе с Xming — несмотря на простоту подключения мне было непонятна последовательность действий и как этого зверя использовать. PhpStorm просто как пример :)
Ну я тоже разрабатываю под Magento в основном. Проекты — разворачиваю на сервере, IDE на локалке в нескольких местах (дом / работа / другой город дом). IDE к серверу через sftp/ftp подключается, коммиты в проект это коммиты в проект и вполне себе хватает делать их с локалки под вииндой. Честно скажу что сейчас не веду отдельные репозитарии для расширений, хотя между проектами их копирую периодически. Ранее конкретно для расширениий (знаю что не удобно, но вполне выполнимо) просто вначале руками копировал их в отдельный фолдер и коммитил, потом мини скрипты, которые это делали — т.е. вполне себе такой стандартный подход.
Я к чему — мне все-равно не понятно для чего надо разворачивать ИДЕ на стороне сервака и подключаться к ней через удаленный рабочиий стол по сути, чем так принципиально не подходит вариант ИДЕ на локальной машине и подключение по sftp / ftp с автодеплоем + Ctrl+S или подключение диска по ssh (подключение диска сам не использовал, но видится что не очень удобно будет, т.к. это все же не локальная ФС, а количество файлов будет огромным в случае с мажентой)

Касательно xming и исходной задачи плановой миграции — не проще просто развернуть виртуалку с убунтой, развернуть ее во весь экран и работать из нее? В таком случае сам процесс разработки в phpStorm вообще практически ничем отличаться от винды не будет и под рукой и винда и убунта.
К слову я сейчас как-раз таким способом пытаюсь работать, но как показывает практика, это не всегда удобно. По сути оновную часть времени я все также работаю из под винды — это те случаи когда не развернешь проект на локалке (размеры БД / используемые технологии и т.д.) + работаю из несколких мест. А вот недавно начал на laravel 5 проект, вот там как-раз прихожу к обратному мнению — локалка куда выгодней (это на первый взгляд) — и в дороге можно поработать, и elixir не будет ругаться когда по умолчанию вытается уведомления пробросить через gulp-notify а некуда и изза этого не компилятся шаблоны. хотя вполне вероятно что доработают и сделают его опциональным, но пока как-то работать надо…
У нас есть core-модули, которые участвуют в нескольких наших проектах, поэтому все изменения мы протаскиваем через SVN. Есть система скриптов, которая позволяет монтировать из SVN наши модули в структуру Magento-сервера, а также коммитить все изменения во всех модулях и обновлять их. Монтирование происходит на уровне каталогов, не файлов — SVN этого не позволяет.

При рассмотрении альтернативных средств развертывания пришли к modeman и Magento Composer. modeman вообще не работает с windows, а Magento Composer требует донастройки прав пользователя для своей работы. Поэтому вполне логично появилась мысль мигрировать на linux. Лишней машины у меня нет, да и переключаться между двумя наборами клавиатур/мышек не комфортно, а виртуальных linux-серверов (именно серверов, а не десктопных рабочих станций) — штук 5. Поэтому и родилась идея запустить phpStorm на удаленном сервере с доступом с wind'ы. Чтобы можно было в linux-среде изучить возможности развертывания через Magento Composer (hardlinks!!!) без разрушения основной рабочей среды (Windows) и не создавать при этом новых инсталляций.

Этот пост родился в силу того, что я только в одном месте нашел указание на последовательность действий при запуске x-приложений на linux-машине с доступом к ним с windows-машин через Xming. Если бы я сразу вышел вот на эту страницу, я бы и написал этот пост, но так как я потратил довольно много времени на «плутание в трех соснах», да и чтобы закрепить результат, я написал пост в Хабр (хотя мог и в корпоративную вики).

Кстати, так можно и не только PhpStorm запускать, но и другие x-приложения с удаленной машины. И я использовал PhpStorm как локально (из офиса), так и удаленно (из дома) — вполне рабочее решение. Особого дискомфорта я не испытал, правда у нас интернет довольно хороший. Посмотрю еще VirtualBox, если получится разобраться с ним и развернуть рабочую среду за пару-тройку часов.
После окончательного развертывания IDE PhpStorm на удаленном Ubuntu-хосте можем начинать разрабатывать наши проекты не выходя из привычного нам Windows-окружения

Это мем?
это вопрос?
Если требуется разработка на сервере. То проще замапить локальную папку на папку по sftp и использовать Deployment по Ctrl+S
Я разрабатываю под Magento — там очень много файлов в проекте. Не всякая IDE потянет. Например, Zend Studio в свое время не мог прочитать полностью проект со сторонними модулями из-за кольцевого наследования в каких-то классах. Я часто использую поиск по всем файлам проекта и опасаюсь, что sftp-шная папка будет меня сильно тормозить. Хотелось запускать IDE локально.
Вы не правильно меня поняли. У вас будет весь проект локально, будет быстрый поиск и все что вы хотите. А вот при сохранении Ctrl+S идет заливка измененного файла на сервер. При необходимости с мержем. Просто попробуйте. :)
Вот в том-то и проблема, что файлы лежат на Windows-машине, а windows не поддерживает hardlinks в полной мере. Система развертывания модулей для Magento modman, например, под windows не работает. Поэтому одним из ограничений является, что файлы должны лежать на linux-машине.
На Arch Linux phpStrorm ставится одной командой: yaourt -S phpstrom. Или yaourt -S phpstrom-eap для EAP версии. Всякие Java автоматом ставятся с зависимостей.
С обновлениями беда. Ментейнеры не всегда поспевают за разработчиками. А что бы обновить такой phpstorm через стандартную форму требуется запуск от рута. Лучше уж в ~/.local распаковать архив.
Так PKGBUILD можно подправить да поставить.
действительно странно, никогда не мог нормально работать в Windows окружении. Люди учат vim, собирают плагины и стараются по ssh работать на удаленных серверах, тут всё ровным счётом наоборот. Но на вкус и цвет конечно, глядишь когда-то пригодится Ваш опыт :) Спасибо за статью!
Пожалуйста :) Но мне кажется, что я тоже пытаюсь мигрировать с Windows на Linux. Хоть и довольно плавно :)
НЛО прилетело и опубликовало эту надпись здесь
Спасибо, посмотрю.
Соглашусь с вышесказанным: vagrant (возможно с docker'ом) либо sftp все-таки должны помочь избавиться от таких подходов к организации разработки.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации