Я думаю, что 5 наборов файлов или папок, которые создает Bundler в Rails 3:
- Gemfile
- Gemfile.lock
- .bundle / конфигурации
- производитель / комплект
- производитель / кэш
Есть еще? Для каждого из них они должны быть добавлены в хранилище? Gemfile
и Gemfile.lock
, я так думаю, потому что это то, что позволяет всем использовать одну и ту же версию драгоценных камней. Для .bundle/config
, я думаю, для разработки, мы, вероятно, должны добавить его, потому что он говорит: «Не используйте общие драгоценные камни» (я думаю, это означает системные драгоценные камни) ... и т. Д. Я прочитал один документ, который говорит, что это развертывание , затем используйте .gitignore
, чтобы игнорировать этот файл, потому что он может отличаться на каждом компьютере развертывания (как?) ... так что это означает только на компьютере развертывания, используйте локальный .gitignore
, чтобы игнорировать его во время разработки не игнорируй это?
А как насчет vendor/bundle
файлов? Они могут содержать скомпилированные двоичные файлы, поэтому, если они будут добавлены в проект разработчиком Macbook, повлияет ли это на другого разработчика, использующего Linux? (Или когда проект клонируется на сервер развертывания, который использует Linux).
А как насчет vendor/cache
? Он содержит все файлы .gem
. Могут ли они содержать какие-либо двоичные файлы? Или они всегда для пользователя делают bundle install --local
, и все они содержат только текстовые файлы, поэтому они будут генерировать соответствующие двоичные файлы, если таковые имеются, в каталоге gem, так что добавление этой папки в проект является необязательным, хотя если мы запустим bundle package
для создания этой папки, возможно, что все будут создавать драгоценные камни, используя эту папку, а не вытаскивая ее из rubygems.org?