1:cygwin è utile per hack rapidi e per poter accedere alle risorse del sistema operativo host (puoi eseguire IE ad esempio in uno script bash). Per qualcosa di strettamente integrato e qualche parola "reale", vai a un vm. Emulerà tutto e separerà lo sviluppo dalla macchina reale, e questo può essere una buona cosa in alcuni casi... in più simula un server reale:)
2:almeno in virtualbox, hai cartelle condivise e puoi condividere una cartella locale e vederla nella vm come una cartella locale (locale o come condivisione di Windows ... in realtà dipende). Quindi puoi usare quel "punto di ingresso" per collegare simbolicamente cose nella VM e fare le cose di cui hai bisogno con i file reali che si trovano nella macchina reale (host)
Ho già affrontato problemi comuni e la soluzione migliore secondo la mia esperienza sono solo 2 postazioni di lavoro :).
A parte il fatto che avere Linux in esecuzione in un ambiente virtuale è molto meglio. Prima di tutto, avrai tutte le funzionalità di Linux (tranne l'accelerazione 3d, ma probabilmente non ne avrai bisogno). Avrai la possibilità di creare istantanee e tornare indietro a loro quando le cose vanno male! Puoi avviare più ambienti utilizzando i modelli, il che è molto conveniente.
L'unico inconveniente a cui riesco a pensare sono i problemi di prestazioni della macchina host. Se si tratta di una normale workstation/PC, un IDE + una macchina virtuale + un browser con più di 100 schede lo rallenta.