Come integrare meglio un ambiente di sviluppo unix in Windows [chiuso]

8

Sono principalmente un utente di Windows, ma faccio la maggior parte del mio sviluppo (essenzialmente lo sviluppo web) usando strumenti e software Unix. Sto andando avanti e indietro tra l'uso di una macchina virtuale lubuntu dedicata su Virtualbox e l'utilizzo di alcuni strumenti direttamente in Windows (msgit, python, django), ma nessuno di questi approcci è del tutto soddisfacente.

Mi piacerebbe sapere come gli altri sviluppatori utilizzano per integrare meglio un flusso di lavoro Unix in Windows. Per esempio un'integrazione più stretta tra un linux e vm e windows. La demo vagabonda ha mostrato come una VM potrebbe funzionare da una cartella di progetto di Windows e l'ho trovata carina. Mi piacerebbe conoscere altri strumenti e suggerimenti che potrebbero aiutare a simulare il flusso di lavoro che si può trovare su OS X (ovviamente capisco che non può essere così strettamente integrato su Windows in quanto non ha le stesse basi Unix).

PS: ho provato anche cygwin

EDIT per chiarimenti su cosa trovo carente (grazie a axblount per averlo indicato): strumenti unix come msys e altri non funzionano come le loro controparti uniche native. Molti script, i programmi di installazione richiedono un'ulteriore configurazione o non funzionano affatto. Ad esempio far funzionare virtualenvwrapper non è molto semplice. virtualbox: idealmente mi piacerebbe usare il software windows (photoshop, sublime text 2) perfettamente con linux. Per lo più uso un client FTP atm per spostarmi sui file modificati sul lato Windows che è un processo noioso.

SINTESI: Sembra che non ci siano soluzioni stabilite. Come soluzione temporanea, probabilmente cercherò di utilizzare le versioni native di framework e librerie attraverso la riga di comando di Windows quando possibile e di passare a uno strumento come vagabondo per programmi incompatibili.

ALTRE INFO DA RISPOSTE E COMMENTI: Il problema case-sensitive sembra funzionare contro Windows come indicato da @GlenPeterson

    
posta Shigar Kenze 01.11.2012 - 19:54
fonte

3 risposte

7

Gran parte del tuo sviluppo (essenzialmente lo sviluppo web) usa strumenti e software unix.

Hai testato diverse alternative per utilizzare questi strumenti in Windows, ma al momento non ne hai trovato uno che funzioni bene come il vero.

Quindi dovresti prendere in considerazione migrare te stesso a Linux come sistema operativo desktop e virtualizzare Windows per tutto il resto.

Credimi, non te ne pentirai. Il tuo desktop sarà più veloce, più sicuro, privo di virus e avrai tutti gli strumenti necessari per i tuoi progetti di sviluppo.

EDIT:

Accogliere un grande commento da @GlenPeterson:

Se stai distribuendo su Unix / Linux, dovresti lavorare su un sistema con distinzione tra maiuscole e minuscole. L'insensibilità alla cassa di Windows può causare problemi un giorno.

    
risposta data 02.11.2012 - 19:28
fonte
4

Se stai distribuendo il tuo software su server Linux, dovresti fare pratica di distribuire il tuo software su un server Linux (anche in una VM). Rendi automatico il tuo processo di distribuzione. La parte più importante è la distribuzione e l'implementazione del codice. È necessario creare e implementare in modo coerente il tipo di sistema di destinazione.

Trovati un buon terminale e impara a usarlo. Io uso Putty e ho trovato che è molto meglio di cygwin e msys.

Alcuni sistemi di integrazione continua consentono di eseguire e testare il codice in remoto prima che sia possibile eseguire il commit sul VCS. L'uso di questa funzionalità sul tipo di sistema di destinazione può prevenire molti problemi.

    
risposta data 01.11.2012 - 23:36
fonte
1

Se stai utilizzando una versione recente di Windows, dai un'occhiata a SUA , il sottosistema per le applicazioni Unix. Ha una shell (ksh) e supporta oltre 300 comandi e utility Unix comuni. La maggior parte dei documenti parla di Server 2003 R2, ma si installa anche su Windows 7.

    
risposta data 02.11.2012 - 01:08
fonte

Leggi altre domande sui tag