MSysGit frente a Git para Windows

105

Tengo problemas para determinar la diferencia entre MSysGit y Git para Windows . ¿En qué se diferencian? ¿Por qué elegiría uno sobre el otro?

Jarrod
fuente
15
+1, esta es en realidad una pregunta más difícil / más complicada / importante de lo que parece.
1
Ver también diferente entre msysgit y cygwin + git:? Stackoverflow.com/questions/3144082/...
VonC

Respuestas:

79

¿No son lo mismo?

En: http://msysgit.github.com/ El título es Git para Windows, la aplicación es msysgit.

Incluso en el caso de que no lo sean, espero que las únicas diferencias estén en el método de compilación (es decir, el compilador utilizado y cualquier conjunto de opciones) y cualquier paquete extraño (como tener un shell emulador de bash como en msysgit). El producto real (Git en sí) debería seguir siendo muy similar.


Editar : Gracias a Jarrod por señalar esto. Dejé lo anterior para la posteridad. Para citar la wiki:

msysGit es el entorno de desarrollo para compilar Git para Windows. Está completo, en el sentido de que solo necesita instalar msysGit y luego puede compilar Git. Sin instalar ningún software de terceros. msysGit no es Git para Windows; ese es un instalador que instala Git, y solo Git.

Es fácil ver la diferencia: los instaladores de Git tienen el prefijo Git-, los instaladores de msysGit tienen el prefijo msysGit-. Otro indicador es que los instaladores de msysGit vienen en dos versiones: fullinstall y netinstall. Además, msysGit no se instala en C: \ Archivos de programa de forma predeterminada. Pero msysGit viene con gcc, el compilador GNU C.

Entonces, la diferencia entre los dos proyectos :

  • msysGit es el msys+mingw entorno + todo lo necesario para compilar Git usted mismo, en Windows.
  • Git para Windows es exactamente eso: Git, compilado para Windows.
Mark Amery
fuente
8
No creo que sean lo mismo. Si sigue un enlace en el que publicó, encontrará "msysGit no es Git para Windows" en la wiki
Jarrod
2
@ Jarrod Creo que tienes toda la razón y he actualizado mi respuesta.
5
Por favor, disculpe mi ignorancia, pero ¿por qué querría compilar git? Si solo quisiera usar git para el control de código fuente en Windows, ¿necesito msysGit?
Jarrod
3
@Jarrod Respuesta corta a su pregunta: No. Obtenga Git en Windows.
2
@Jarrod: ¡Querría compilarlo usted mismo si quisiera usar la última versión de git, para poder obtener todas las funciones nuevas y emocionantes lo antes posible! Hago esto en linux.
Cascabel
16

(Ahora) son los mismos (en mayo de 2015, pero probablemente un poco antes):

"msysgit" y "Git para Windows" se han fusionado bajo el nombre "Git para Windows". msysgit.github.io ahora aloja "Git para Windows" y el sitio principal de descarga de git git-scm.com enumera msysgit.github.io como la compilación mantenida para Windows.

De la wiki actualizada :

... decidimos eliminar el nombre "msysGit" (así como la organización de GitHub del mismo nombre) y trabajar en Git para Windows (con la correspondiente organización de GitHub, y usando el nombre "Git para Windows" para instalador dirigido a "usuarios finales" y "Git para Windows SDK" para el entorno de desarrollo dirigido a Git para desarrolladores de Windows).

Bryan P
fuente
¿Cómo pueden ser iguales, cuando git-for-windows es una bifurcación de msysgit, git-for-windows está en desarrollo y msysgit no, y git-for-windows usa Git 2.4?
BlackEye
1
@Ojo negro. Suena como una historia interesante. Mi respuesta fue solo señalar que estos proyectos ahora se han fusionado (como se describe en la wiki del proyecto), a pesar de su historial. Parece que esto es relevante para muchas personas que intentan decidir cuál usar ahora.
Bryan P
4

Aquí está el extracto 'README oficial'

No es necesario instalar la versión "portátil" de Git para Windows (MSysGit). Se ejecutará desde cualquier directorio en el que lo coloque, incluso en una memoria USB. No escribirá entradas permanentes en el registro de Windows. No necesita privilegios de administrador para "instalar". Esta versión no le ofrece las convenientes entradas del menú contextual del botón derecho del ratón "Git GUI Here" y "Git Bash Here", ya que estas requerirían agregar entradas en el registro de Windows.

Santhosh Neyyar
fuente
Eso se aplica a ambos, creo.
BlackEye
4

Git para Windows es más nuevo que msysGit . Si desea utilizar la versión 2.x de Git, debe descargarla desde https://github.com/git-for-windows/git/releases . https://github.com/msysgit/git/releases se usa para la versión 1.x de Git.

Algunos detalles técnicos de https://github.com/git-for-windows/git/wiki/FAQ

Git para Windows solía desarrollarse utilizando el entorno de desarrollo llamado "msysGit", pero coincidiendo aproximadamente con Git 2.1, msysGit fue reemplazado por un nuevo entorno de desarrollo: el SDK de Git para Windows .

Tobias Schultze
fuente
2

Los títulos de la página de descarga se acaban de actualizar para que las versiones de "Git para Windows" estén completamente identificadas. Ahora hay una versión 'instalada' (con opciones de menú del botón derecho del ratón) y una versión portátil que se ejecuta directamente desde una tarjeta de memoria, etc.

Philip Oakley
fuente
2

Por lo que entiendo, Git en Windows es el proyecto que consta de los cuatro puntos a continuación.

Tomado directamente de https://github.com/msysgit/msysgit/wiki :

Git en Windows

Para hacer más clara la 'sopa' lechosa de los nombres de los proyectos, decimos así:

  • msysGit : es el nombre de este proyecto, un entorno de compilación para Git para Windows, que lanza los binarios oficiales

  • MinGW : es un entorno de desarrollo minimalista para aplicaciones nativas de Microsoft Windows.

  • MSYS : es un sistema de intérprete de línea de comandos de Bourne Shell, es utilizado por MinGW (y otros), fue bifurcado en el pasado por Cygwin

  • Cygwin : un entorno similar a Linux, que se usó en el pasado para construir Git para Windows, hoy en día no tiene relación con msysGit

netigger
fuente
1
¿No falta una viñeta: "git para Windows"? Qué instala el usuario promedio de Windows GIT para usar GIT. github.com/msysgit/git
Tom
1

Esta es una comparación general más clara desde su sitio 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.
PositiveGuy
fuente
1

Git para Windows es probablemente lo que desea. Incluye las siguientes características principales:

Git BASH Git para Windows proporciona una emulación BASH que se utiliza para ejecutar Git desde la línea de comandos. * Los usuarios de NIX deben sentirse como en casa, ya que la emulación BASH se comporta como el comando "git" en entornos LINUX y UNIX.

GUI de Git Como los usuarios de Windows suelen esperar interfaces gráficas de usuario, Git para Windows también proporciona la GUI de Git, una poderosa alternativa a Git BASH, que ofrece una versión gráfica de casi todas las funciones de la línea de comandos de Git, así como herramientas de diferenciación visual completas.

Integración de Shell Simplemente haga clic derecho en una carpeta en el Explorador de Windows para acceder a BASH o GUI. El complemento Git-Cheetah también proporciona una interfaz similar a TortoiseSVN que muestra las funciones de Git directamente en el menú contextual.

Lo siguiente está disponible como descarga separada desde la misma página ...

msysGit es un entorno de compilación que incluye todas las herramientas necesarias para los desarrolladores que desean contribuir escribiendo código para Git para Windows.


Git BASH ofrece un entorno familiar para los expertos en Linux que ocasionalmente necesitan usar una máquina con Windows, incluso si no se necesitan a gitsí mismos. Se inicia con el indicador bash y añade una colección de programas básicos de servicios públicos tales como ssh, find, grep, vi, awk, y, por supuesto git.

Brent Bradburn
fuente
A estas alturas, es posible que esté más interesado en el Subsistema de Windows para Linux .
Brent Bradburn