MSysGit против Git для Windows

105

Мне не удается определить разницу между MSysGit и Git для Windows . Насколько они разные? Почему я должен предпочесть одно другому?

Джаррод
источник
15
+1, это на самом деле более сложный / более сложный / важный вопрос, чем кажется на первый взгляд.
1
См. Также Различия между msysgit и cygwin + git?: Stackoverflow.com/questions/3144082/…
VonC

Ответы:

79

Разве это не одно и то же?

На: http://msysgit.github.com/ Название - Git для Windows, приложение - msysgit.

Даже в том случае, если это не так, я ожидаю, что единственные различия будут в методе компиляции (т. Е. Используемом компиляторе и любых наборах параметров) и любой посторонней упаковке (например, наличие оболочки эмуляции bash, как в msysgit). Фактический продукт (сам Git) должен оставаться в целом похожим.


Изменить : Спасибо Джарроду за указание на это. Я оставил вышесказанное для потомков. Процитируем вики:

msysGit - это среда разработки для компиляции Git для Windows. Он завершен в том смысле, что вам просто нужно установить msysGit, а затем вы можете собрать Git. Без установки стороннего ПО. msysGit - это не Git для Windows; это установщик, который устанавливает Git - и только Git.

Разницу увидеть несложно: у инсталляторов Git префикс Git-, у инсталляторов msysGit префикс msysGit-. Еще одним признаком является то, что установщики msysGit бывают двух видов: fullinstall и netinstall. Кроме того, по умолчанию msysGit не устанавливается в C: \ Program Files. Но msysGit поставляется с gcc, компилятором GNU C.

Итак, разница между двумя проектами :

  • msysGit - это msys+mingw среда + все необходимое для компиляции Git самостоятельно в Windows.
  • Git для Windows - это именно то, что: Git, скомпилированный для Windows.
Марк Эмери
источник
8
Я не думаю, что это одно и то же. Если вы перейдете по ссылке в той, которую вы разместили, вы найдете «msysGit не Git для Windows» в вики
Джаррод
2
@Jarrod Я думаю, что вы абсолютно правы, и я обновил свой ответ.
5
Пожалуйста, извините за мое незнание, но зачем мне компилировать git? Если бы я просто хотел использовать git для управления версиями в Windows, нужен ли мне msysGit?
Джаррод
3
@Jarrod Краткий ответ на ваш вопрос: Нет. Загрузите Git для Windows.
2
@Jarrod: Вы бы сами скомпилировали его, если хотите использовать последнюю версию git, чтобы вы могли как можно скорее получить все интересные новые функции! Я делаю это на linux.
Cascabel
16

(Теперь) они такие же (по состоянию на май 2015 года, но, вероятно, немного раньше):

«msysgit» и «Git для Windows» объединились под названием «Git для Windows». msysgit.github.io теперь размещает "Git для Windows", а на основном сайте загрузки git git-scm.com перечислены msysgit.github.io. в качестве обслуживаемого сборки для окон.

Из обновленной вики :

... мы решили просто постепенно отказаться от имени "msysGit" (а также от одноименной организации GitHub) и работать над Git для Windows (с соответствующей организацией GitHub и с использованием имени "Git для Windows" для установщик, предназначенный для "конечных пользователей" и "Git for Windows SDK" для среды разработки, предназначенной для разработчиков Git для Windows).

Брайан П.
источник
Как они могут быть одинаковыми, когда git-for-windows является форком msysgit, git-for-windows находится в стадии разработки, а msysgit - нет, а git-for-windows использует Git 2.4?
BlackEye
1
@Черный глаз. Похоже на интересную историю. Мой ответ просто указывал на то, что эти проекты теперь объединены (как описано в вики проекта), несмотря на их историю. Кажется, это актуально для многих людей, пытающихся понять, какой из них использовать сейчас.
Брайан П.
4

Вот отрывок из официального README

«портативную» версию Git для Windows (MSysGit) устанавливать не нужно. Он будет запускаться из любого каталога, в который вы его поместите, даже на USB-накопитель. Он не будет записывать постоянные записи в реестр Windows. Для «установки» не требуются права администратора. В этой версии нет удобных пунктов контекстного меню, вызываемых щелчком правой кнопкой мыши, «Git GUI Here» и «Git Bash Here», поскольку для этого потребуется добавить записи в реестр Windows.

Сантош Нейяр
источник
Думаю, это применимо к ним обоим.
BlackEye
4

Git для Windows новее, чем msysGit . Если вы хотите использовать Git версии 2.x, вам необходимо загрузить ее с https://github.com/git-for-windows/git/releases . https://github.com/msysgit/git/releases используется для Git версии 1.x.

Некоторые технические подробности см. На https://github.com/git-for-windows/git/wiki/FAQ.

Git для Windows раньше разрабатывался с использованием среды разработки под названием «msysGit», но, примерно совпадая с Git 2.1, msysGit был заменен новой средой разработки: Git для Windows SDK .

Тобиас Шульце
источник
3

Многие ответы в этом посте старые.

По состоянию на ноябрь 2015 г.

msysGit на Git для Windows 1.x теперь заменен Git для Windows 2.x.

Git для Windows и git-scm указывают на одно и то же место загрузки для своего двоичного файла.

Место загрузки:

https://github.com/git-for-windows/git/releases/download/v2.7.1.windows.2/Git-2.7.1.2-64-bit.exe

Рави Парех
источник
2

Заголовки на странице загрузки были обновлены, поэтому версии «Git для Windows» полностью определены. Теперь есть как «установленная» версия (с параметрами меню, вызываемыми правой кнопкой мыши), так и портативная версия, которая запускается непосредственно с карты памяти и т. Д.

Филип Окли
источник
2

Насколько я понимаю, Git в Windows - это проект, состоящий из четырех перечисленных ниже пунктов.

Взято прямо с https://github.com/msysgit/msysgit/wiki :

Git в Windows

Чтобы молочный суп из названий проектов был более понятным, мы говорим так:

  • msysGit - это название этого проекта, среды сборки Git для Windows, которая выпускает официальные двоичные файлы

  • MinGW - это минималистичная среда разработки для нативных приложений Microsoft Windows.

  • MSYS - это система интерпретатора командной строки Bourne Shell, используется MinGW (и другими), в прошлом была разветвлена из Cygwin.

  • Cygwin - Linux-подобная среда, которая использовалась в прошлом для сборки Git для Windows, в настоящее время не имеет отношения к msysGit.

пользователь сети
источник
1
Не хватает одного пункта: "git for windows"? Что устанавливает средний пользователь Windows GIT для использования GIT. github.com/msysgit/git
Том
1

Это более четкое общее сравнение прямо с их сайта 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
источник
1

Git для Windows , вероятно, то, что вам нужно. Он включает следующие основные функции:

Git BASH Git для Windows предоставляет эмуляцию BASH, используемую для запуска Git из командной строки. * Пользователи NIX должны чувствовать себя как дома, поскольку эмуляция BASH ведет себя так же, как команда «git» в средах LINUX и UNIX.

Git GUI Поскольку пользователи Windows обычно ожидают графических пользовательских интерфейсов, Git для Windows также предоставляет Git GUI, мощную альтернативу Git BASH, предлагающую графическую версию практически всех функций командной строки Git, а также комплексные инструменты визуального сравнения.

Интеграция оболочки Просто щелкните правой кнопкой мыши папку в проводнике Windows, чтобы получить доступ к BASH или графическому интерфейсу. Плагин Git-Cheetah также предоставляет интерфейс, подобный TortoiseSVN, который отображает функции Git непосредственно в контекстном меню.

Следующее доступно для отдельной загрузки с той же страницы ...

msysGit - это среда сборки, которая включает в себя все инструменты, необходимые разработчикам, которые хотят внести свой вклад, написав код для Git для Windows.


Git BASH предоставляет знакомую среду для экспертов по Linux, которым иногда требуется использовать машину с Windows, даже если она им не нужна git. Она начинается с BASH быстрого и добавляет набор основных утилит , таких как ssh, find, grep, vi, awk, и, конечно же git.

Брент Брэдберн
источник
К настоящему времени вас может заинтересовать подсистема Windows для Linux .
Brent