2014-06-05 16 views
7

Ho installato msysgit tramite il programma di installazione netto. Ho finito con quasi 2 giga di materiale, dove ho tra le altre cose git sources e MinGW.Differenze tra MinGW da msysgit (ovvero Git su Windows) e MinGW da MinGW.org

Ho tre domande

  • avevo già MinGW da MinGW.org. Ora penso di poter rimuovere quest'ultimo e rimanere con la distribuzione di msysgit. In ogni caso MinGW di MinGW.org viene fornito con mingw-get, che può essere utilizzato per gestire i pacchetti MinGW. Come posso identificare i pacchetti che vengono con msysgit? oppure, mettilo in modo diverso, (considerando l'enorme dimensione di msysgit) quali pacchetti rimangono fuori?

  • Data la dimensione complessiva e dal momento che Git è stato creato, quali sono le cartelle che possono essere rimosse senza influire sul normale utilizzo di Git? Questo presuppone che non ho bisogno di costruire di nuovo Git.

  • Infine, questa versione deve essere considerata portatile? In caso contrario, quali sono le chiavi del Registro di sistema o le variabili di ambiente installate?

In sostanza ho bisogno di aiuto per decidere se usare il piccolo Git portatile e impostare i collegamenti simbolici a MinGW o utilizzare l'enorme all-in-one distro e spazzatura il buon vecchio MinGW.org.

risposta

14

Bene, ci sono alcuni malintesi in gioco qui. Per prima cosa togliiamoli di mezzo:

  1. L'ambiente di shell di tipo Unix di cui si parla si chiama MSYS. È stato originariamente sviluppato da MinGW.org come fork di Cygwin. Questo è stato a sua volta biforcato per essere leggermente migliorato in modo che git potesse funzionare con esso, che divenne msysgit. Si noti che i binari git sono programmi Win32 nativi, ma la shell POSIX è necessaria per il suo funzionamento.

  2. MinGW.org fornisce uno strumento di installazione del pacchetto di istruzioni/pacchetto chiamato mingw-get. Può essere eseguito da MSYS (e credo anche cmd semplice).

Ora, per rispondere alla tua domanda:

  • direi msysgit fornisce la quantità minima di pacchetti necessari per una git completamente funzionale. Un sacco di git scorre attraverso la shell, quindi è necessario un sacco di utilità. Non sono sicuro di questo però.

  • Perché sei edificio git? Sembra un brutto tentativo. Suggerisco di guardare sotto per un modo migliore di usare git e MinGW e una shell insieme.

  • MSYS è abbastanza portatile, anche se potrebbe essere necessario rieseguire lo script di postinstallazione se ci si sposta. Per impostazione predefinita, msysgit inserisce le sue chiavi ssh nella cartella utente di Windows, non nella struttura MSYS, quindi assicurati di non perderle.

Infine, per evitare tutti questi problemi e contribuire a migliorare la messa a punto di un fattore significativo (di una certa quantità di qualità di configurazione casuale): utilizzare MSYS2. Cos'è MSYS2?È un fork aggiornato dell'attuale Cygwin, modificato per agire come MSYS (con tutto il percorso di traduzione), integrato con un gestore di pacchetti davvero utile e con toolchain MinGW-w64. Per riassumere: MSYS2 è migliore, migliore e migliore di tutto ciò che hai ora. Nota che puoi installare una tonnellata di librerie MinWG-w64 senza doverle costruire da te. È anche possibile installare git, sebbene il pacchetto MSYS2 non sia

+0

+1 per pacman incluso. Sarò in grado di eseguire/installare Git dall'interno di MSYS2? – antonio

+0

@antonio Sì, solo 'pacman -Syu; pacman -S git'. Ci dovrebbe essere un [pacchetto] (https://github.com/Alexpux/MSYS2-packages/tree/master/git). – rubenvb

+0

Questa è stata la risposta più precisa che chiarisce la connessione tra mingw, msys e cygwin che ho trovato finora. Grazie! –