git bash - это оболочка, в которой:
См. « Исправление переносимого $HOME
местоположения msysGit »:
В Windows 64:
C:\Windows\SysWOW64\cmd.exe /c ""C:\Prog\Git\1.7.1\bin\sh.exe" --login -i"
Это отличается от git-cmd.bat
, который предоставляет команды git в простой командной строке DOS.
Такой инструмент, как GitHub для Windows (G4W), предоставляет другую оболочку для git (включая оболочку PowerShell).
Обновление апрель 2015 г . :
Примечание: git bash в msysgit / Git для Windows 1.9.5 - старый:
GNU bash, version 3.1.20(4)-release (i686-pc-msys)
Copyright (C) 2005 Free Software Foundation, Inc.
Но с постепенным прекращением использования msysgit (4 квартал 2015 г.) и нового Git для Windows (2 квартал 2015 г.) теперь у вас есть Git для Windows 2.3.5 .
Он имеет гораздо более позднюю версию bash, основанную на 64- битном проекте msys2 , независимую переписанную версию MSYS, основанную на современном Cygwin (уровень совместимости POSIX) и MinGW-w64 с целью улучшения взаимодействия с собственным программным обеспечением Windows. msys2
поставляется с собственным установщиком .
Теперь git bash (с новым Git для Windows):
GNU bash, version 4.3.33(3)-release (x86_64-pc-msys)
Copyright (C) 2013 Free Software Foundation, Inc.
Оригинальный ответ (июнь 2013 г.) Точнее, из msygit wiki :
Исторически Git для Windows официально поддерживался только с помощью Cygwin.
Чтобы помочь создать нативную версию Windows, этот проект был начат на основе вилки mingw .
Чтобы молочный суп из названий проектов был более понятным, мы говорим так:
- msysGit - это название этого проекта, среды сборки Git для Windows, которая выпускает официальные двоичные файлы
- MinGW - минималистичная среда разработки для нативных приложений Microsoft Windows.
Это действительно очень тонкий слой времени компиляции над Microsoft Runtime; Таким образом, программы MinGW являются настоящими программами Windows, без концепции путей в стиле Unix или тонкостей POSIX, таких как fork()
вызов
- MSYS - это система интерпретатора командной строки Bourne Shell, используется MinGW (и другими), в прошлом была разветвлена из Cygwin.
- Cygwin - Linux-подобная среда, которая использовалась в прошлом для сборки Git для Windows, в настоящее время не имеет отношения к msysGit.
Итак, ваше двухстрочное описание "git bash":
" Git bash
" - это оболочка msys, включенная в "Git для Windows", и это урезанная версия Cygwin (к тому же старая версия), единственная цель которой - предоставить достаточно уровня POSIX для запуска bash.
Напоминание:
msysGit - это среда разработки для компиляции Git для Windows. Он завершен в том смысле, что вам просто нужно установить msysGit, а затем вы можете собрать Git. Без установки стороннего ПО.
msysGit - это не Git для Windows; это установщик, который устанавливает Git - и только Git .
Подробнее см. « Разница между msysgit и Cygwin + git? ».