Подтвердить что ты не робот

Использование msysGit из MinGW и наоборот

Я использую git как мою систему контроля версий. Для этого я установил msysGit для проверки своих репозиториев на MSW. Теперь я хочу скомпилировать мои программы с MinGW и нашел для меня эту "проблему": Когда я устанавливаю MinGW и MSYS через mingw-get, я могу скомпилировать свою программу, без проблем. Но я не могу получить доступ к git. Когда я использую git Bash, я могу работать с git, но не могу скомпилировать.

Есть ли возможность:

  • установить MinGW "в" git Bash (потому что он уже содержит msys, не так ли?) OR
  • установить "ссылки" между обеими установками, чтобы заставить его работать.

Я бы предпочел, чтобы я мог обновлять оба пакета в актуальном состоянии.

Заранее спасибо:)

4b9b3361

Ответ 1

Как вы установили Msysgit? Вы выбрали третий вариант на экране, где он запрашивает установку PATH?

enter image description here

(выше скриншота из: http://ekkescorner.files.wordpress.com/2010/02/git-windows-msysgit-install-3.png.)

Вам нужно выбрать третий вариант или даже второй может быть достаточно.

Ниже показан снимок экрана с моего MingW

enter image description here

В любом случае, все о настройке правильного пути к git.exe в msysgit, или мне что-то не хватает?

Ответ 2

Вы можете добавить символическую ссылку на git в MinGW, если вы выбрали второй вариант.

Итак, если ваша установка msysgit находится в папке C:\Program Files (x86)\Git Откройте оболочку MinGW и введите:

cd /usr/bin
ln -s /c/Program\ Files\ \(x86\)/Git/bin/git git

Это создаст символическую ссылку под названием git в MinGW/usr/bin, указывающую на установку msysgit. Затем вы можете использовать команду git в любом месте от оболочки MinGW.

Ответ 3

Вам нужно исправить PATH, чтобы вы выполняли внешние команды, соответствующие среде msys или msysgit. В зависимости от того, как вы установили эти две среды оболочки, один из них будет первым в PATH, поэтому независимо от того, какой из bash вы используете, вы будете запускать внешние команды из каталога bin, который является первым в PATH.

Вы можете проверить это, запустив ls.exe из разных оболочек bash, я нашел, что один работал, а другой - нет, но когда я исправил PATH, они оба работали.

Я попытался выработать умный script, который будет работать для обоих, но это сложно, поскольку они оба сопоставляют свой собственный каталог bin с /bin. Когда мне стало сложно работать, я создал msys.sh и msysgit.sh с линией:

export PATH=/c/MinGW/msys/1.0/bin:/c/MinGW/bin:${PATH}

или

export PATH="/c/Program Files (x86)/Git/bin:${PATH}"

соответственно. Эти файлы должны быть отправлены в среду, в которой вы работаете. Например:

source ./msys.sh

Вам действительно нужен только один script, поскольку одна среда будет работать, но я также установил RubyDevKit, у которого была такая же проблема, поэтому было проще создать script для каждой среды.

Ответ 4

Если вы хотите, чтобы путь изменялся каждый раз, когда вы запускаете git bash в окнах. Вам необходимо выполнить следующие действия:

  • В прогоне Windows введите "git bash"
  • Vim ~/.profile
  • Добавить "экспорт PATH =/c/MinGW/msys/1.0/bin:/c/MinGW/bin: ${PATH}" в последнюю строку файла. (MinGW должен найти в C:\MinGW)
  • : wq, существуют vim.
  • выйти из git bash и снова перезапустить