2010-10-26 3 views
7

Я запускаю несколько версий Ruby (и Rails) в Windows и использую Pik для переключения между ними. В командной строке, я могу назватьКак я могу использовать Pik для Ruby в Git Bash для Windows?

> pik list 
186: ruby 1.8.6 (2007-09-24 patchlevel 111) [i386-mswin32] 
192: ruby 1.9.2p0 (2010-08-18) [i386-mingw32] 

, чтобы получить список версий рубина доступных, а также использовать

> pik 192 

> ruby -v 
ruby 1.9.2p0 (2010-08-18) [i386-mingw32] 

сделать Руби 1.9.2 активную версию:

Я не в состоянии сделать то же самое в мерзавца Баш:

$ pik list 
sh.exe": pik: command not found 

и версия рубин еще 1.8.6

$ ruby -v 
ruby 1.8.6 (2007-09-24 patchlevel 111) [i386-mswin32] 

Похоже мерзавца Баш не может видеть путь к ПИКа. Есть ли способ изменить путь в git bash или есть другой способ запустить pik в git bash?

+0

Под git вы можете запустить 'echo $ PATH', а под окнами вы можете запустить' PATH'? Кроме того, вы можете запустить 'gem env'? –

+0

Да, чтобы эхо $ PATH и Да, чтобы gem env. – y0mbo

+0

Хорошо, позвольте мне перефразировать это. Запустите эти команды и добавьте вывод их в свой вопрос (за вычетом любых вещей, которые вы считаете приватными). –

ответ

2

Убедитесь, что у вас установлена ​​последняя версия Pik (0.2.8). открыть свой профиль .bash_profile или аналогичный под Git Bash и убедиться, что он содержит следующий код:

[[ -s $USERPROFILE/.pik/.pikrc ]] && source $USERPROFILE/.pik/.pikrc 

Оттуда вы должны быть в состоянии вызвать PIK из терминала Git Bash.

Надежда, что помогает

+0

, не имея котировок вокруг 'source $ USERPROFILE/.pik/.pikrc', вызвало у меня проблемы. Итак, '' источник $ USERPROFILE/.pik/.pikrc "исправил эти ... – goliatone

10

В последний ответ является правильным, насколько это идет. Однако в системах Windows переменная среды USERPROFILE устанавливается примерно так: C: \ Documents and Settings \ имя_пользователя.

Пробелы в пути заставляют команду интерпретироваться неправильно. Это лучше:

[[ -s "$USERPROFILE/.pik/.pikrc" ]] && source "$USERPROFILE/.pik/.pikrc" 

Обратите внимание на цитаты вокруг путей в фрагменте кода выше.

Кроме того, ваш .bashrc-файл (или файл .bash_profile) должен находиться в каталоге, указанном переменной окружения USERPROFILE, например. - C: \ Documents and Settings \ имя пользователя.

+0

Thx David для подсказки. –

+0

Также, если вы устанавливаете Pik на другой диск (например, D :), вам также нужно отредактировать файл .pikrc, расположенный под .pik forlder, под вашим профилем пользователя, чтобы pik_path указывал на правый диск. Например: pik_path = d:/pik –

+0

Также, если вы устанавливаете отдельно 1.9.2 с помощью установщика Windows, вам нужно будет отредактировать файл .pik/config.yml и добавить настройку gem_home, указывающую на дом драгоценности 1.9.2: : gem_home:! ruby ​​/ object: Pathname путь: c: /Ruby192/lib/ruby/gems/1.9.1 –

3

мне пришлось .bash_profile редактировать и .pikrc

.bash_profile:

[[ -s "$USERPROFILE/.pik/.pikrc" ]] && source "$USERPROFILE/.pik/.pikrc" 

.pikrc

#!/bin/sh 
pik_path="/c/Program Files/pik" 

function pik { 
    "$pik_path/pik_runner.exe" pik.sh [email protected] 
    [[ -s "$USERPROFILE/.pik/pik.sh" ]] && source "$USERPROFILE/.pik/pik.sh" 
} 

Возникли кавычки путей необходимо, только если у вас есть пробелы в path (например, «Program Files»).

Смежные вопросы