MSysGit contro Git per Windows


105

Ho problemi a determinare la differenza tra MSysGit e Git per Windows . Come sono differenti? Perché dovrei sceglierne uno piuttosto che l'altro?


15
+1, questa è in realtà una domanda più difficile / più coinvolgente / importante di quanto non sembri a prima vista.

1
Vedi anche differenti tra msysgit e Cygwin + git:? Stackoverflow.com/questions/3144082/...
VonC

Risposte:


79

Non sono la stessa cosa?

Su: http://msysgit.github.com/ Il titolo è Git per Windows, l'applicazione è msysgit.

Anche nel caso in cui non lo siano, mi aspetto che le uniche differenze saranno nel metodo di compilazione (cioè compilatore utilizzato e qualsiasi impostazione di opzioni) e qualsiasi impacchettamento estraneo (come avere una shell che emula bash come in msysgit). Il prodotto reale (Git stesso) dovrebbe rimanere sostanzialmente simile.


Modifica : grazie a Jarrod per averlo sottolineato. Ho lasciato quanto sopra per i posteri. Per citare il wiki:

msysGit è l'ambiente di sviluppo per compilare Git per Windows. È completo, nel senso che devi solo installare msysGit, quindi puoi compilare Git. Senza installare alcun software di terze parti. msysGit non è Git per Windows; questo è un programma di installazione che installa Git - e solo Git.

È facile vedere la differenza: gli installatori di Git hanno il prefisso Git-, gli installatori msysGit hanno il prefisso msysGit-. Un'altra rivelazione è che gli installatori di msysGit sono disponibili in due versioni: fullinstall e netinstall. Inoltre, msysGit non viene installato in C: \ Programmi per impostazione predefinita. Ma msysGit viene fornito con gcc, il compilatore C GNU.

Quindi, la differenza tra i due progetti :

  • msysGit è msys+ l' mingwambiente + tutto il necessario per compilare Git da soli, su Windows.
  • Git per Windows è esattamente questo: Git, compilato per Windows.

8
Non credo siano la stessa cosa. Se segui un collegamento in quello che hai pubblicato, troverai "msysGit non è Git per Windows" sul wiki
Jarrod

2
@Jarrod Penso che tu abbia assolutamente ragione e ho aggiornato la mia risposta.

5
Per favore scusa la mia ignoranza, ma perché dovrei voler compilare git? Se volessi usare git per il controllo del codice sorgente su Windows, ho bisogno di msysGit?
Jarrod

3
@ Jarrod Risposta breve alla tua domanda: No. Ottieni Git su Windows.

2
@Jarrod: vorresti compilarlo da solo se volessi utilizzare l'ultima versione di git, in modo da poter ottenere tutte le nuove entusiasmanti funzionalità il prima possibile! Lo faccio su Linux.
Cascabel

16

(Ora) sono gli stessi (a partire da maggio 2015 ma probabilmente un po 'prima):

"msysgit" e "Git per Windows" si sono fusi con il nome "Git per Windows". msysgit.github.io ora ospita "Git per Windows" e il sito principale di download di git git-scm.com elenca msysgit.github.io come build mantenuta per Windows.

Dal wiki aggiornato :

... abbiamo deciso di eliminare gradualmente il nome "msysGit" (così come la GitHub org con lo stesso nome) e lavorare su Git per Windows (con la corrispondente GitHub org, e usando il nome "Git for Windows" per programma di installazione rivolto a "utenti finali" e "Git per Windows SDK" per l'ambiente di sviluppo destinato agli sviluppatori Git per Windows).


Come possono essere gli stessi, quando git-for-windows è un fork di msysgit, git-for-windows è in fase di sviluppo e msysgit no, e git-for-windows usa Git 2.4?
BlackEye

1
@Occhio nero. Sembra una storia interessante. La mia risposta stava solo sottolineando che questi progetti sono ora fusi (come descritto nel wiki del progetto), nonostante la loro storia. Sembra che questo sia rilevante per molte persone che cercano di scegliere quale usare ora.
Bryan P

4

Ecco l'estratto "README ufficiale"

La versione "portatile" di Git per Windows (MSysGit) non ha bisogno di essere installata. Verrà eseguito da qualsiasi directory in cui viene inserito, anche su una chiavetta USB. Non scriverà voci permanenti nel registro di Windows. Non necessita dei privilegi di amministratore per "installare". Questa versione non offre le comode voci del menu contestuale del tasto destro "Git GUI Here" e "Git Bash Here", perché queste richiederebbero l'aggiunta di voci nel registro di Windows.


Questo vale per entrambi, credo.
BlackEye

4

Git per Windows è più recente di msysGit . Se desideri utilizzare la versione 2.x di Git, devi scaricarla da https://github.com/git-for-windows/git/releases . https://github.com/msysgit/git/releases viene utilizzato per la versione 1.x di Git.

Alcuni dettagli tecnici da https://github.com/git-for-windows/git/wiki/FAQ

Git per Windows veniva sviluppato utilizzando l'ambiente di sviluppo chiamato "msysGit", ma più o meno in coincidenza con Git 2.1, msysGit è stato sostituito da un nuovo ambiente di sviluppo: Git per Windows SDK .



2

I titoli nella pagina di download sono stati appena aggiornati in modo che le versioni "Git per Windows" siano completamente identificate. Ora è disponibile sia una versione "installata" (con opzioni del menu di scelta rapida) e una versione portatile che viene eseguita direttamente da una memory stick, ecc.


2

Da quello che ho capito Git su Windows è il progetto costituito dai quattro elenchi puntati di seguito.

Tratto direttamente da https://github.com/msysgit/msysgit/wiki :

Git su Windows

Per rendere più chiara la 'zuppa' lattiginosa dei nomi dei progetti, diciamo così:

  • msysGit - è il nome di questo progetto, un ambiente di compilazione per Git per Windows, che rilascia i binari ufficiali

  • MinGW : è un ambiente di sviluppo minimalista per applicazioni Microsoft Windows native.

  • MSYS - è un sistema interprete a riga di comando di Bourne Shell, è utilizzato da MinGW (e altri), è stato biforcato in passato da Cygwin

  • Cygwin - un ambiente simile a Linux, che è stato utilizzato in passato per creare Git per Windows, al giorno d'oggi non ha alcuna relazione con msysGit


1
Non manca un proiettile: "git per windows"? Cosa installa l'utente medio di Windows GIT per utilizzare GIT. github.com/msysgit/git
Tom

1

Questo è un confronto generale più chiaro direttamente dal loro sito https://github.com/msysgit/msysgit

Git for Windows is the software package that installs a minimal environment to run Git on Windows. It comes with a Bash (a Unix-type shell), with a Perl interpreter and with the Git executable and its dependencies.

On the other hand, msysGit is the software package installing the build environment that can build Git for Windows. The easiest way is to install it via the net installer.

1

Git per Windows è probabilmente quello che vuoi. Include le seguenti caratteristiche principali:

Git BASH Git per Windows fornisce un'emulazione BASH usata per eseguire Git dalla riga di comando. * Gli utenti NIX dovrebbero sentirsi come a casa, poiché l'emulazione BASH si comporta esattamente come il comando "git" negli ambienti LINUX e UNIX.

Git GUI Poiché gli utenti Windows comunemente si aspettano interfacce utente grafiche, Git per Windows fornisce anche Git GUI, una potente alternativa a Git BASH, offrendo una versione grafica di quasi tutte le funzioni della riga di comando di Git, oltre a strumenti di diff visivi completi.

Integrazione della shell È sufficiente fare clic con il pulsante destro del mouse su una cartella in Windows Explorer per accedere a BASH o GUI. Il plug-in Git-Cheetah fornisce anche un'interfaccia simile a TortoiseSVN che mostra le funzioni di Git direttamente nel menu contestuale.

Quanto segue è disponibile come download separato dalla stessa pagina ...

msysGit è un ambiente di compilazione che include tutti gli strumenti necessari per gli sviluppatori che vogliono contribuire scrivendo codice per Git per Windows.


Git BASH offre un ambiente familiare per gli esperti Linux che occasionalmente devono utilizzare una macchina Windows, anche se non ne hanno bisogno git. Si inizia con la BASH rapido e aggiunge una raccolta di programmi di base di utilità come ssh, find, grep, vi, awk, e naturalmente git.



A questo punto, potresti essere più interessato a Windows Subsystem per Linux .
Brent Bradburn
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.