Ответ 1
rbenv не позволяет этого. Из wiki:
Другие менеджеры версий могут допускать соответствие нечеткой версии на строка, считанная из файла
.ruby-version
, например. они могут позволить "1.9.3" (без суффикса патча), чтобы соответствовать последней версии Ruby 1.9.3. rbenv не будет поддерживать этот, поскольку такое поведение непредсказуемо и поэтому вредно.
комментарий mislav из файла Common.ruby-version для проектов Ruby:
rbenv будет поддерживать
.ruby-version
, но определенно без каких-либо нечеткое сопоставление. Вот почему я думаю, что нечеткое сопоставление - плохая идея:
- Предположим, что у меня установлен 1.9.3-p0.
- Я поместил "ruby-1.9" в
.ruby-version
в свой проект, и все хорошо.- Через некоторое время я устанавливаю 1.9.3-p300, чтобы попробовать, и вдруг все мои проекты, отмеченные "ruby-1.9", автоматически обновляются до него. Драгоценные камни должны переустановить, необходимо обновить собственные расширения и т.д. Кошмар.
Одна из важных причин, почему у нас есть менеджеры версий, о версиях. rbenv будет точным. Если вам нужны симпатичные ярлыки и amp; aliases, вы всегда можете создавать символические ссылки.
Альтернативы
- Отмените файл
.ruby-version
, установив переменную средыRBENV_VERSION
(например, для текущей оболочки, запустивrbenv shell 1.9.3-p448
). - Символы
1.9.3
до1.9.3-p448
, см. rbenv-aliases для деталей.