Ответ 1
Небольшое обновление:. Поскольку выпуски Git 2.x, Git для Windows основаны на MSYS2 и доступен в бинарной форме 32 и 64 бит. Он по-прежнему является вилкой и не взаимозаменяем с реальным MSYS2.
Одна вещь, которую вы должны понимать: msysgit (используется Git) - это fork из msys с добавленной функциональностью Git. В оболочку msys включено множество инструментов unix (полный список см. В папке msysgit/bin).
Возможно, в папку msysgit bin добавятся дополнительные инструменты msys, но я бы не рискнул на это.
В свете этого, я думаю, было бы оптимально просто добавить вашу инструментальную цепочку к пути msysgit (используя файл профиля bash или что-нибудь в дереве msysgit) и просто использовать это. Если какая-либо конкретная утилита отсутствует, добавьте ее из дерева MinGW-msys и надейтесь, что она будет работать нормально.
В качестве альтернативы просто используйте msys- git из cmd.exe. Начиная с последних версий, он работает очень хорошо (включая Git show, редактирование сообщений фиксации и т.д.). Для этого добавьте каталог /cmd в PATH, и вы можете использовать все команды Git, которые вы хотите. Это то, что я делаю, поскольку msys - это перетаскивание, но необходимое зло для Git для работы в Windows.
UPDATE: подробные инструкции по добавлению каталога в PATH под любым видом MSYS:
export PATH=/d/MinGW/bin:$PATH
или hackishly найти /etc/profile и изменить этот раздел
if [ $MSYSTEM == MINGW32 ]; then
export PATH=".:/usr/local/bin:/mingw/bin:/bin:$PATH"
else
export PATH=".:/usr/local/bin:/bin:/mingw/bin:$PATH"
fi
to:
if [ $MSYSTEM == MINGW32 ]; then
export PATH=".:/usr/local/bin:/d/MinGW/bin:/bin:$PATH"
else
export PATH=".:/usr/local/bin:/bin:/mingw/bin:$PATH"
fi
Нет более чистого способа, потому что люди msys- git отключили функциональность fstab, присутствующую в vanilla msys.
Обновление от Nick (что я сделал, чтобы заставить его работать):
Я создал файл в C:\Program Files\Git\etc
под названием bash_profile
. Это содержимое файла:
export PATH=$PATH:/d/mingw/bin:/d/mingw/msys/1.0/bin
make и gcc.
bash_profile
не поставляется с msysgit, поэтому вы не будете перезаписывать его при обновлении.