Мне нравится иметь хранилище SVN где-то на веб-сервере.
Это достаточно безопасно (с использованием Apache WebDAV), и это дает мне хороший шанс быстро восстановиться после любых сбоев, которые могут случиться с моей основной машиной для разработки. Я могу позволить себе роскошь контролировать свой собственный веб-сервер, но есть много дешевых хостов, которые выполнят эту работу по низкой цене.
Что касается ВМ или нет ВМ:
Преимущества виртуальной машины - очень быстрое восстановление после разрушения среды разработки
Возможность быстро опробовать разные версии или обновления
Если у вас много систем, на которых работает хост ВМ, вы можете быстро перемещать всю среду
Можно выбрать любой хост
Недостатки ВМ - влияние на производительность; дополнительная сложность настройки.
В целом, я выбираю «нет ВМ», если все инструменты доступны в моей хост-системе, но я использую ВМ, когда мне нужно запустить другую ОС (хост-система - Mac Pro, поэтому, если мне нужно Visual Studio, я делаю это с Parallels).