Эффективная разница между "gem install --bindir ~/path/to/folder" и "--user-install" в Ruby

В данный момент у меня нет желания изучать Ruby, но я просто хочу знать, в чем разница между gem install --bindir ~/path/ а также gem install --user-install до тех пор, пока каждый из путей в моем $PATH,

1 ответ

Решение

Посмотрите ссылку на команду Ruby GEM здесь:

-n, -​-bindir DIR - Directory where binary files are located

-​-[no-]user-install - Install in user’s home directory instead of GEM_HOME.

Эффективно и оперативно вы, как конечный пользователь, использующий Ruby, не заметите разницу, если пути к файлам $PATH, Но каждая команда явно имеет дело с различным аспектом файловой системы установки Ruby GEM.

- -bindir

-​-bindir относится к bin ичных dir ectory. Многие Ruby GEMS устанавливают файлы сценариев Ruby как часть своей основной библиотечной функции, но также устанавливают "двоичный файл" как часть процесса установки. Это означает, что если вы программист на Ruby, вы, возможно, захотите установить Ruby GEM, чтобы иметь доступную ссылку на его основной код в вашем собственном коде. Но двоичный файл, который выполняет эквивалентную или "вспомогательную" задачу, устанавливается вместе с этими файлами библиотеки Ruby GEM. С точки зрения управления файловой системой, некоторые пользователи могут захотеть установить эти двоичные файлы в отдельный каталог вместо каталога по умолчанию Ruby GEM s.

- -user установить

Так что пока -​-bindir это опция для контроля, где устанавливаются двоичные файлы, связанные с Ruby GEM, -​-user-install является ручным переопределением для того места, где установлены все файлы Ruby GEM; исполняемые файлы, библиотеки и тому подобное. Используя -​-user-install вы инструктируете Ruby GEM для установки GEM в ~/.gem каталог, который, конечно же, находится в домашнем каталоге вашего пользователя. Без -​-user-install опция, файлы Ruby GEM будут установлены там, где по умолчанию GEM_HOME путь есть.

Изменение пути к файлу по умолчанию --user-install не будет негативно влиять на работу. Ruby GEM будут просто установлены в ~/.gem каталог, который находится в вашем домашнем каталоге, и Ruby знает, как проверить его, а также свой собственный путь обновлений по умолчанию.

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