Запуск Git через Cygwin из Windows
Я недавно начал использовать Cygwin для других целей, и на моем компьютере уже установлен Git. Я понимаю, что могу запустить исполняемый файл и установить Git в Cygwin, но так как он у меня уже установлен, я бы хотел, чтобы Cygwin просто использовал мою установку Windows. Я пытался исследовать, как сделать путь перенаправления различными способами, но безуспешно, кто-нибудь может мне помочь?
4 ответа
Я подтверждаю, что git и msysgit могут сосуществовать на одном компьютере, как указано в " Какой версии GIT использовать cygwin или msysGit или оба?".
Git для Windows (msysgit) будет работать в своей собственной оболочке
git-cmd.bat
или удар сGit Bash.vbs
)
Обновление 2016: msysgit устарел, а новый Git для Windows теперь использует msys2После установки пакета Git на Cygwin будет работать в собственной оболочке Cygwin Bash.
- Наконец, начиная с третьего квартала 2016 года и "юбилейного обновления Windows 10", вы можете использовать Git в bash (настоящий Ubuntu(!) Bash).
Там вы можете сделатьsudo apt-get install git-core
и начните использоватьgit для исходныхтекстов проектов, присутствующих либо в "родной" файловой системе контейнера WSL (см. ниже), либо в файловой системе хостинга Windows через /mnt/c/...
,/mnt/d/...
иерархии каталогов.
Специально дляBash в Windows или WSL (подсистема Windows для Linux):
- Это легкий контейнер виртуализации (технически, пико-процесс "Разводной мост",
- размещение неизмененного "безголового" дистрибутива Linux (т.е.Ubuntu без ядра),
- который может выполнять команды на основе терминала (и даже клиентские приложения X-сервера, если X-сервер для Windows установлен),
- с эмулированным доступом к файловой системе Windows (это означает, что, помимо снижения производительности, кодировки для файлов в
DrvFs
эмулируемая файловая система может вести себя не так, как файлы на нативномVolFs
файловая система).
- К сожалению, он не может вызвать обратно в исполняемые файлы Windows, или
- взаимодействовать с любыми родными драйверами (т.е. пока нет графической карты, нет USB-накопителей).
По личному опыту могу сказать, что это плохая идея. Собственные программы Windows не могут принимать пути Cygwin. Например, с Cygwin вы можете запустить команду
grep -r --color foo /opt
без проблем. С Cygwin /
представляет корневой каталог. Родные программы Windows не имеют этого понятия и, скорее всего, потерпят неудачу, если будут вызваны таким образом. Вы не должны смешивать программы Cygwin и Native Windows, если у вас нет другого выбора.
Удалите то, что у вас есть Git, и установите пакет Cygwin git, избавьте себя от головной боли.
Разве это не так просто, как добавить вашу git-инсталляцию в путь Windows?
Например, Win+R rundll32.exe sysdm.cpl,EditEnvironmentVariables
Edit... PATH добавление пути установки Mysysgit, например ;C:\Program Files (x86)\Git\bin
, Перезапустите Cygwin и вуаля. Как Cygwin автоматически загружается в среде Windows, так же будет и ваша нативная установка Git.
Позвоните своему (windows-) мерзавцу с помощью cygpath
в качестве параметра, чтобы преобразовать "вызывающий путь". Я запутался, почему это должно быть проблемой.