«PHP Composer» в сравнении с «Ruby Gems and Bundler»
(Во-первых, этот вопрос не является вопросом «что лучше». Я просто хочу узнать, насколько они похожи и различаются по функциональным возможностям.)
яPHP разработчик и в настоящее время изучаетРубин, В наши дни многие разработчики php рекомендуется использоватьComposer
для управления зависимостями. Прежде чем задавать вопросы, я хотел бы проверить свои знания в первую очередь.
Согласно моему пониманию,
Composer
является инструментом управления зависимостями для библиотек php (или пакетов)Composer
установленная библиотека php для каждого проекта (так называемая локально). Я имею в виду, что библиотека php, установленная для project1, не может быть повторно использована для project2 без повторной установки для project2.Я заметил чтоРубин также имеет очень хороший инструмент управления зависимостямиRubyGems
". Насколько мне известно,
RubyGems
"является менеджером пакетов для" Gems "."Gem
"представляет собой Ruby-программу или библиотеку, упакованную в стандартном формате для совместного использования. (Rails также является жемчужиной).Gem
может быть установлен такой командойgem install sinatra
.Но есть и так называемыеBundler
"который также является драгоценным камнем для объединения драгоценных камней для приложения.Когда командаbundle install
работает (в определенном каталоге проекта ruby), все гемы, перечисленные в Gemfile, установлены для этого проекта ruby.Итак, мои вопросы здесь.
Composer
похоже на лиRubyGems
или жеBundler
?Когда бегиgem install sinatra
это установлено на общесистемном уровне?Когда бегиbundle install
Камни устанавливаются локально (только в этом проекте) или на уровне всей системы?Если мне нужно две версии одногоgem
(например,Синатра) для разных проектов, как мне справиться?(Извините за мой длинный вопрос. Если мое понимание что-то не так, извините еще раз и, пожалуйста, укажите правильное.)