Quelle est la différence entre bundle install -- deployment et bundle pack?

je sais qu'ils ont à la fois de mettre les pierres dans votre application dans différents endroits, mais il semble comme si bundle install --déploiement fait un travail plus complet. Puis-je simplement ajouter le répertoire fournisseur/bundle qu'il crée au contrôle de version et être fait?

18
demandé sur concept47 2011-06-10 04:00:13

3 réponses

consultez la description des deux sur le site de Bundler.

Exécution bundle install --deployment doit être exécuté dans l'environnement de production, mais saisira les gemmes de rubygems lors de l'exécution. En savoir plus ici sous la rubrique "Déployer votre Application" aux fins de --deployment drapeau.

bundle package est similaire à l'ancienne rake rails:gems:freeze commande à partir des Rails 2.3. Il saisit les gemmes et les empaquette dans vendor/cache. Du site du bundler ici:

Vous pouvez l'utiliser pour éviter une dépendance sur rubygems.org au moment du déploiement, ou si vous avez des bijoux privés qui ne sont pas un dépôt public

18
répondu Matthew Lehner 2017-10-17 13:37:09

j'utilise bundle install --path vendor/bundle en mode développement. bundle install --deployment verrouiller votre Gemfile.verrouiller et ne pas le mettre à jour lorsque vous changez votre Gemfile, donc ne jamais utiliser l'option de déploiement sur l'environnement de développement. bundle install --no-deployment désactivera le mode de déploiement des paquets. Vous pouvez lire post à propos de l'utilisation de l'ensemble dans le droit chemin.

20
répondu Gonzih 2011-06-10 08:15:30

j'ai expliqué assez longuement le raisonnement derrière le drapeau --deployment mode dans un exposé que j'ai donné à RailsConf 2011. Ce billet de blogue contient mes notes pour cet exposé, et (j'espère) couvre tout le raisonnement derrière la façon dont le déploiement fonctionne:http://andre.arko.net/2011/06/11/deploying-with-bundler-notes/

5
répondu indirect 2013-08-19 21:45:56