2 Stimmen

Wenn mein Kollege "bundle install" ausführt, wird er dann die neuesten Gems installieren oder die in Gemfile.lock?

Das liegt daran, dass auf gembundler.com steht:

Stellen Sie sicher, dass Sie Gemfile.lock zu Ihrem Repository hinzufügen. Dies wird sicherstellen, dass andere Entwickler an Ihrer Anwendung, sowie als auch Ihr Deployment genau denselben Drittanbieter-Code verwenden wie Sie gerade installiert haben.

Nehmen wir also an, ich sage einfach

gem 'rails'

Wenn also mein Kollege eine bundle install 3 Monate später, wenn Rails 3.0.6 oder später veröffentlicht wird, wird er 3.0.6 oder die Version in Gemfile.lock installieren (die im Moment 3.0.5 ist)?

Wenn alles genau mit Gemfile.lock übereinstimmen muss, wie ist dann das Verfahren zur Aktualisierung von Gemfile.lock? Sicherstellen, dass alle Tests erfolgreich sind, und dann irgendwie Bunlder anweisen, alle Gems auf die neuesten Versionen zu aktualisieren, und die Tests erneut durchführen und sicherstellen, dass sie erfolgreich sind, und dann die neueste Gemfile.lock übertragen?

7voto

Victor Deryagin Punkte 11375

bundle install installiert die in Gemfile.lock gefundenen Gems-Versionen. Um auf die neuesten erlaubten Versionen zu aktualisieren, sollten Sie Folgendes ausführen bundle update (es aktualisiert auch Gemfile.lock). Wenn nach der Aktualisierung etwas schief geht (z.B. Tests fehlschlagen), können Sie auf die vorherige Version von Gemfile.lock im Repository zurückgreifen und Folgendes ausführen bundle install erneut, um früher funktionierende Versionen von Edelsteinen zu erhalten. Außerdem können einzelne Edelsteine aktualisiert werden durch bundle update <gem_name> z.B. bundle update rails (das auch Abhängigkeiten auflöst und Gemfile.lock aktualisiert).

1voto

yfeldblum Punkte 64211

En gembundler.de Website hat eine Menge Antworten. Sie sollten sich die Begründung Seite.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X