Я думаю, что существует столько же решений, сколько и разработчиков-фрилансеров.
Может быть, не самый лучший, но вот что я делаю, и это хорошо работает:
- Windows7 хостинг 2 виртуальных машины (virtualbox)
- Eclipse Helios на компьютере с Windows
- 1 VM Ubuntu, используется для тестирования различных скриптов с клиента
- 1 VM Debian как сервер разработки, построенный как идеальный образ рабочего сервера
- 1 производственный сервер, поэтому в моем случае это Debian, куда я передаю «готовый» продукт или проверенные версии.
- 1 сервер разработки, только для SVN и / или TRAC или аналогичных. Это может быть объединено с вашим виртуальным сервером разработки.
- для разработки на Perl я добавил модули Perl - под cygwin- на хостинге Windows, Eclipse настраивается в соответствии с этой настройкой. Но, честно говоря, таких смешанных решений следует избегать.
Что это позволяет?
- использование виртуальной машины позволяет вам иметь некое постоянное резервное копирование вашего сервера разработки,
- использование виртуальной машины позволяет вам легко вернуться к предыдущей версии сервера - например, в случае сбоя
- ssh с одной машины на другую, даже с одной виртуальной машины на другую,
- общий доступ к каталогам между Windows и вашей виртуальной машиной,
- использование Eclipse в качестве центра разработки для всего этого на компьютере Windows (subclipse / svn client, java, python, php, perl, bash, js, ...)
Вы потеряете часть скорости локального сервера из-за ресурсов, необходимых для виртуальной машины - размещенных на той же машине, что и ваши компоненты Windows, но «сколько» будет зависеть от вашего оборудования. В любом случае это не должно становиться узким местом для такой компоновки.
Поначалу это немного тяжело настроить, но очень удобно сразу на треке.
Надеюсь, это даст вам хотя бы идеи.
PS: настроить ВМ довольно просто, даже такой нуб, как я, сделал это: -)