Почему мой Pik Gem не работает на Git Bash, но хорошо работает на CMD? Я использую windows 7

Я установил pik gem, чтобы иметь возможность переключаться между версиями ruby, и он хорошо работал в командной строке, но когда я пытаюсь сделать то же самое в Git Bash, он не переключает версию ruby, я попробовал все. Кто-нибудь может мне помочь? Я использую Windows 7.

Пик в командной строке:

C:\Users\Suporte 2>pik list
  187: ruby 1.8.7 (2013-06-27 patchlevel 374) [i386-mingw32]
* 193: ruby 1.9.3p545 (2014-02-24) [i386-mingw32]

C:\Users\Suporte 2>ruby -v
ruby 1.9.3p545 (2014-02-24) [i386-mingw32]

C:\Users\Suporte 2>pik 187

C:\Users\Suporte 2>ruby -v
ruby 1.8.7 (2013-06-27 patchlevel 374) [i386-mingw32]

C:\Users\Suporte 2>pik list
* 187: ruby 1.8.7 (2013-06-27 patchlevel 374) [i386-mingw32]
  193: ruby 1.9.3p545 (2014-02-24) [i386-mingw32]

То же самое в Git Bash:

Suporte 2@SUPORTE2 /
$ pik list
  187: ruby 1.8.7 (2013-06-27 patchlevel 374) [i386-mingw32]
* 193: ruby 1.9.3p545 (2014-02-24) [i386-mingw32]

Suporte 2@SUPORTE2 /
$ ruby -v
ruby 1.9.3p545 (2014-02-24) [i386-mingw32]

Suporte 2@SUPORTE2 /
$ pik 187

Suporte 2@SUPORTE2 /
$ ruby -v
ruby 1.9.3p545 (2014-02-24) [i386-mingw32]

Suporte 2@SUPORTE2 /
$ pik list
  187: ruby 1.8.7 (2013-06-27 patchlevel 374) [i386-mingw32]
* 193: ruby 1.9.3p545 (2014-02-24) [i386-mingw32]

Это мой ПУТЬ:

C: \ pik \; C: \ RailsInstaller \ Git \ cmd; C: \ RailsInstaller \ Ruby1.9.3 \ bin; C: \ Program Files \ Borland \ Delphi7 \ Bin; C: \ Program Files \ Borland \ Delphi7 \ Projects \ Bpl \; C: \ Program Files \ NVIDIA Corporation \ PhysX \ Common; C: \ Program Files \ CollabNet; C: \ Program Files \ Embarcadero \ RAD Studio \ 9.0 \ bin; C: \ Users \ Public \ Documents \ RAD Studio \ 9.0 \ Bpl; C: \ Program Files \ Embarcadero \ RAD Studio \ 9.0 \ bin64; C: \ Users \ Public \ Documents \ RAD Studio \ 9.0 \ Bpl \ Win64;% SystemRoot% \ system32;% SystemRoot%;% SystemRoot % \ System32 \ Wbem;% SYSTEMROOT% \ System32 \ WindowsPowerShell \ v1.0 \; C: \ Program Files \ nodejs \; C: \ Program Files \ Heroku \ bin; C: \ Program Files \ git \ cmd; C: \ pik; C: \ RailsInstaller \ Ruby1.9.3 \ bin; C: \ RailsInstaller \ ruby-1.8.7-p374-i386-mingw32 \ bin; C: \ Program Files \ Git \ cmd

Это мой архив.bashcr в C:\Users\Suporte 2:

[[ -s C:/Users/Suporte\ 2/.pik/.pikrc ]] && source C:/Users/Suporte\ 2/.pik/.pikrc

Это мой архив.pikrc в C:\Users\Suporte 2\ .pik:

#!/bin/sh
pik_path=/c/pik

function pik  {
  $pik_path/pik_runner.exe pik.sh $@
  [[ -s C:/Users/Suporte\ 2/.pik/pik.sh ]] && source C:/Users/Suporte\ 2/.pik/.pikrc
} 

1 ответ

Почему это не работает, я верю, что ты вставил свой путь.

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

C: \ RailsInstaller \ Git \ CMD, C:\RailsInstaller\Ruby1.9.3\ Bin

Является ли вторая запись на вашем пути. Это означает, что он всегда будет найден первым и, возможно, причиной того, что он не находит правильную версию ruby, когда вы пытаетесь переключиться. Вы должны сравнить этот путь с вашим путем в cmd до и после переключения версий. Я верю, что вы увидите разницу по сравнению с тем, как это выглядит, когда вы используете его внутри git bash.

Другие вопросы по тегам