wird nicht ausgecheckt ... Bundle-Installation behebt NICHT die Hilfe!


68
https://github.com/intridea/omniauth.git (at master) is not checked out. Please run `bundle install` (Bundler::GitError)

Also was mache ich? Die Bundle-Installation funktioniert in der Entwicklung, aber wenn ich sie auf meinen Produktionsserver pushe und bereitstelle. Ich erhalte diesen Fehler auch nach dem Ausführen der Bundle-Installation auf meinem Produktionsserver.


5
Selbst wenn Ihre Frage bereits gelöst ist, können Sie ihr einen weiteren Kontext hinzufügen, damit er für andere Personen mit ähnlichen Problemen nützlich ist? Was haben Sie zum Beispiel getan, um diese Fehlermeldung zu erhalten?
Paŭlo Ebermann

Antworten:


118

Sie führen wahrscheinlich Passagier. Dies ist das Problem bei einigen Lösungen - http://code.google.com/p/phusion-passenger/issues/detail?id=505

Versuche zu rennen bundle install --deployment


Nur ein Hinweis, es wurde eine Abschreibungsmeldung mit 3.0.9 angezeigt, die besagt, dass die Bereitstellung des Bundle-Installationspfads verwendet werden soll.
Fivetwentysix

8
Das maskiert das Problem mehr als löst es - - Der Bereitstellungsmodus ist nicht für die Entwicklung vorgesehen und wirft Probleme mit jedem Bundle auf.
Greg Funtusov

1
"Im Bereitstellungsmodus wird Bundler das Bundle für den produktiven Einsatz" ausrollen "." Dieser Anbieter (kopiert) die Edelsteine ​​in Ihre Entwicklungs-App und bläht den Code der App auf. Es muss einen besseren Weg geben, um das Problem zu lösen?
Dennis

1
Zu meinem vorherigen Kommentar: Versuchen Sie,Gemfile.lockund.bundle/configaus Ihrem Projekt zuentfernenund auszuführenbundle install. (Beachten Sie, dass das Fehlen von aGemfile.lockdazu führen kann, dass einige Edelsteine ​​beim Ausführen aktualisiert werdenbundle install.) Das Problem wurde für mich behoben. Ein Versuch lohnt sich, bevor Sie den Bereitstellungsmodus in Entwicklungs- oder Testumgebungen aktivieren.
Dennis

1
Falls ihr es später braucht, macht ihr es so: bundle install --no-deployment
Adrian Teh




6

Wenn Ihr Computer nie neu gestartet wird, ist Spring möglicherweise das Problem. Der Frühling lief 350 Stunden und verursachte das Zwischenspeichern der veralteten TEST-Umgebung. Ich hatte dieses Problem in meiner Gurkentestumgebung in Rubymine. Seltsam war, dass von (mac) der Eingabeaufforderung kein Problem auftrat.

spring status
spring stop

und voila! Es hat alles wieder funktioniert.


Dies kann auch passieren, wenn Sie Ihre Repo-URLs von git: // in https: // ändern. spring stopaka "Haben Sie versucht, es aus- und wieder einzuschalten?" ist das einzige (!), was in diesem Fall funktioniert.
Janosch

3

Nach dem Upgrade auf Ruby 2.7.0 ist dieses Problem aufgetreten

Es sieht so aus, als ob möglicherweise Änderungen vorgenommen wurden, um die Nutzung des Unternehmens, das sich :github =>auf die eigentliche Softwareplattform konzentriert, zu verwerfen:git => . Vielleicht besser für eine einfachere Wartbarkeit der Codelogik.

Ändern Sie Folgendes:

gem 'devise', :github => 'plataformatec/devise'  

Zu dem Folgendem:

gem 'devise', :git => 'git://github.com/plataformatec/devise'

Eine Alternative ist, dass Sie immer noch auf Folgendes verweisen können: github als Ihre git_source oben in Ihrer Gem-Datei und einfach auf die Gems wie gewohnt wie folgt:

source 'https://rubygems.org'                                                                                                                             
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
...
gem 'devise'

Dies war auch nach dem Upgrade die Lösung für mein Problem. Upvoted :)
Paascal

2

Wenn Sie ausführen bundle installund dann versuchen, etwas auszuführen, sehen Sie "... github.com ... ist noch nicht ausgecheckt. bundle installZuerst ausführen ." - Das bedeutet, dass Sie bundle execvor Ihrem Befehl Folgendes verwenden müssen, z.

bundle exec rails s

1

Die lokale Installation von gem im Projektverzeichnis behebt das Problem für mich.

 $ bundle install --path vendor/bundle


0

Es ist ein Berechtigungsfehler. Folgendes hat funktioniert

Umgebung : RVM mit Apache

RVM-Benutzer: Gruppe : rvm: rvm

Apache-Benutzer: Gruppe : Apache: Apache

Sie müssen einen Apache-Benutzer zur RVM-Gruppe hinzufügen

usermod -a -G rvm apache

Außerdem wurde zur Diskussion hinzugefügt: Ich hatte die gleichen Probleme, daher habe ich versucht, den Benutzer in nginx.conf explizit auf den Benutzer festzulegen, für den RVM installiert wurde und der funktionierte. Also bevor es auskommentiert wurde: #user Nobody;, jetzt ist es: user jake.
SnakeWasTheNameTheyGaveMe


0

Aktualisieren Sie Ihre Gemfile wie folgt.

gem 'activeadmin', github: 'activeadmin/active_admin', branch: '0-6-stable'

und dann,

bundle install

Wenn immer noch ein Fehler auftritt (weil Sie versucht haben, " Bundle Install - Deployment " zu installieren , versuchen Sie es dann)

bundle install --no-deployment

0

Diese Lösung

$ bundle install --path vendor/bundle

hat mein Problem mit der Ausführung mehrerer Rails-Apps über Foreman behoben.

Hinweis: Vergessen Sie nicht, danach auszuführen, rbenv rehashwenn Sie verwenden rbenv.
Und fügen Sie /vendor/bundleIhre hinzu, .gitignorewenn noch nicht hinzugefügt.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.