1

Я пытаюсь установить оптимальную практику для виртуальных машин для разработчиков. В настоящее время мы работаем над Windows 7 с Visual Studio 2008. Однако нам нужно поэкспериментировать с VS2010, и для этого мы создаем VM7 Win7 и загружаем то, что хотим.Как вы управляете своими виртуальными машинами для изолированной разработки?

Моя техника заключается в создании новой виртуальной машины, в данном случае виртуальной машины Win7, и как только она пройдет через все ее обновления и т. Д. Возьмите ее копию в следующий раз, когда мне нужен тот же тип VM. Я использовал один экземпляр для тестирования, а затем, в конце концов, отказался или удалил его, как только я сделал его неустойчивым и вернусь и сделаю копию оригинала. Тем не менее, я обнаружил, что было много небольших утилит и улучшений, которые я сделал для предыдущей рабочей виртуальной машины, которую я никогда не устанавливал в виртуальной виртуальной машине, и вам придется установить все это снова.

Я ищу наилучшую практику использования VM для разработки программного обеспечения.

+0

Какое программное обеспечение VM вы используете? VPC или VMWare? –

+1

Шаг назад. Объясните, чего вы пытаетесь достичь. Используйте виртуальную машину для тестирования установщика с различными конфигурациями или чем-то еще. Не используйте его для повседневной работы. (Или, если вы используете его для своей повседневной работы, не делайте снимок и не восстанавливайте его. Потому что, очевидно, вы потеряете свои настройки в этом случае.) – jrockway

+0

Использование VirtualPC – Guy

ответ

3

VMWare имеет отличный диспетчер моментальных снимков, который позволяет перемещаться без разрушения через дерево моментальных снимков виртуальной машины. Вы можете сделать снимок в точке A, а затем продвинуть виртуальную машину в точку B (другой снимок), вернуться к A и перейти на C (снимок C). Затем начинайте новое поддерево неразрушающим образом в любой из этих точек. Вы также можете клонировать виртуальную машину и сглаживать несколько снимков в один снимок, а также удалять промежуточные снимки и обрезать ветви дерева.

Очень умный способ обработки моментальных снимков. Я использовал Virtual Box, когда у него была только линейная деструктивная репликация моментальных снимков. Я понимаю, что VBox улучшился, но VMWare все еще имеет возможность использовать возможности моментальных снимков.

Кроме того, если вы отлаживаете VM, VMWare имеет расширения для записи выполнения VM для отладки.

+0

Как это поможет получить настройки в системе, если вы забудете делать снимки после большинства твиков? (каждый?) –

+0

@Vinko: Менеджер снимков не поможет вам, если вы забудете делать снимки. Я не знаю, есть ли функция авто-моментального снимка или нет на любой виртуальной машине, но даже авто-снимок не будет принимать их в точках, которые вы хотите (или наклейте их с пользой). – Adisak

+0

@Adisak: Точно, но Гай в комментарии к моему ответу говорит, что проблема в том, что люди забудут сделать X (будь то установить его на другую виртуальную машину или сделать снимок) –

1

Учитывая, что вы не можете сохранить порядок вещей и иметь список улучшений (идеальная вещь для ИМО), почему бы просто не использовать две виртуальные машины, где вы работаете, и другую «девственницу». Затем, когда вы или кто-либо другой улучшаете вашу рабочую виртуальную машину, ее нужно реплицировать на виртуальную виртуальную машину. В следующий раз, когда вы или кто-либо еще установит новую копию виртуальной машины, после нескольких итераций вы получите «идеальную виргинскую версию».

+0

Это идеальный подход, однако, на самом деле, девственная версия никогда не обновляется. Это немного похоже на подход большинства людей к комментариям в коде или модульных тестах - они вернутся к этому, когда у них будет время. – Guy

+0

Если у вас достаточно машины для одновременного включения обеих виртуальных машин, это не займет много времени. –

+1

Общая практика - это производственные, бета-версии и тестовые снимки. Вы выполняете большую работу (которая может быть восстановлена ​​или удалена) в тестовых моментальных снимках. Когда работа кажется хорошей, вы помещаете ее в бета-снимок и проверяете ее. Только тогда вы продвигаете бета-версию на производство. Если ваша бета-версия представляет собой моментальный снимок на производственной ветви, вам не нужно повторять работу на виртуальной машине, просто «продвигайте» снимок. – Adisak

Смежные вопросы