2011-07-18 22 views
5

Tôi nhận đượcHeroku từ chối đẩy trong ứng dụng trưởng thành (pre-nhận móc giảm)

FAILED: http://devcenter.heroku.com/articles/bundler 

! Heroku đẩy bị từ chối, không thể cài đặt đá quý qua Bundler Để [email protected]: ... ! [từ chối bị từ chối] master -> master (móc nhận trước bị từ chối) lỗi: không thể đẩy một số thông số vào ………… .. (xem phần dưới để có danh sách đầy đủ)

Đây là ứng dụng hiện đang hoạt động trên heroku, nhưng heroku sẽ không cho phép git đẩy chủ nhân heroku cập nhật mã.

Tuy nhiên, nếu tôi sao chép mã vào thư mục mới và tạo heroku tạo để tạo ứng dụng mới với dữ liệu được gieo, ứng dụng mới hoạt động tốt. Tuy nhiên, tôi không muốn sử dụng ứng dụng mới vì tôi có dữ liệu về ứng dụng hoạt động mà tôi muốn tồn tại.

Dường như có điều gì đó trên ứng dụng hoặc đá quý hiện có đang chống lại việc cập nhật. Tôi sẽ không nghĩ rằng dữ liệu có thể ngăn chặn đá quý được cài đặt, vì vậy tôi không biết phải làm gì.

Đề xuất?

Liệu "Heroku đẩy bị từ chối, không cài đặt được đá quý thông qua Bundler" có nghĩa là vấn đề đang cập nhật đá quý, hay đó là cá trích đỏ?

Cảm ơn.

$ git push heroku master Đếm đối tượng: 536, đã hoàn tất. Nén đồng bộ sử dụng tối đa 2 luồng. Các đối tượng nén: 100% (125/125), đã hoàn thành. Các đối tượng viết: 100% (391/391), 1,08 MiB, đã hoàn tất. Tổng số 391 (delta 262), được sử dụng lại 373 (delta 251)

-----> Heroku receiving push 
-----> Removing .DS_Store files 
-----> Rails app detected 
-----> Detected Rails is not set to serve static_assets 
     Installing rails3_serve_static_assets... done 
-----> Configure Rails 3 to disable x-sendfile 
     Installing rails3_disable_x_sendfile... done 
-----> Configure Rails to log to stdout 
     Installing rails_log_stdout... done 
-----> Gemfile detected, running Bundler version 1.0.7 
     Unresolved dependencies detected; Installing... 
     Using --without development:test 
     Windows Gemfile.lock detected, ignoring it. 
     You have modified your Gemfile in development but did not check 
     the resulting snapshot (Gemfile.lock) into version control 
    You have added to the Gemfile: 
    * source: rubygems repository http://rubygems.org/ 
    * rails (= 3.0.5) 
    * haml 
    * haml-rails 
    * sqlite3-ruby 
    * devise (= 1.1.5) 
    * omniauth 
    * declarative_authorization 
    * will_paginate (= 3.0.pre2) 
    * nifty-generators 
    * acts-as-taggable-on 
    * acts_as_commentable 
    * aws-s3 
    * jquery-rails 
    * rspec-rails 
    * annotate 
    * faker (= 0.3.1) 
    * hpricot (= 0.8.3) 
    * ruby_parser 
    * paperclip (~> 2.3) 
    * formtastic (~> 1.2.3) 
    * hirb 
    * kaminari 
    * rspec (= 2.5.0) 
    * webrat 
    * factory_girl_rails (= 1.0) 
    * cucumber 
    * mocha 
    FAILED: http://devcenter.heroku.com/articles/bundler 

! Heroku đẩy bị từ chối, không cài đặt được đá quý qua Bundler

Để [email protected]: ... ! [Từ chối từ xa] master -> tổng thể (pre-nhận móc giảm) lỗi: không thể đẩy một số refs để ............ ..

+0

Tôi nghĩ đây là khóa của họ: 'Windows Gemfile.lock được phát hiện, bỏ qua nó.'. Hãy xem câu hỏi "Liệu Bundler có hoạt động trên Windows không?" tại đây: http://www.engineyard.com/blog/2011/bundler-pro-tip/. Ngoài ra: http://stackoverflow.com/questions/5954236/why-wont-heroku-accept-my-gemfile-lock-in-windows – matt

+0

@RickHeller vui lòng chấp nhận câu trả lời của Codeglot, bởi vì bạn rõ ràng hài lòng với nó. – opyate

Trả lời

7
You have modified your Gemfile in development but did not check 
the resulting snapshot (Gemfile.lock) into version control 

Điều này có nghĩa rằng bạn đã thêm đá quý cho bạn gemfile nhưng có không đã cập nhật thành. Gemfile.lock không đồng bộ với tệp này.

Bạn cần cập nhật gói của mình.

Chạy lệnh này trong giao diện điều khiển trong thư mục của ứng dụng của bạn: bundle

Sau đó làm git push heroku

Và bạn sẽ được tốt để đi.

** Nuke ứng dụng và bắt đầu lại.

gem install taps #install taps 
heroku db:pull #pull your data to your local machine 

rm -rf .git #remove your git repo 
git init #create a new repo 
git add . #add all the files 
git commit -m 'master' #commit as master 

heroku create #create a new heroku app 
heroku rename myapp #rename the app 
git push heroku master #push to heroku 

heroku db:push #push your data to heroku 

Và điều đó sẽ có ứng dụng mới.

+0

Cảm ơn, nhưng có vẻ phức tạp hơn thế. Có lẽ một cái gì đó đã bị hỏng. Tại một thời điểm nào đó, một trong số chúng tôi đặt Gemfile.lock vào tệp .gitignore, và đó có lẽ là điều bắt đầu sự cố. Những gì tôi vừa làm là xóa dòng từ .gitignore, xóa Gemfile.lock, chạy gói cài đặt để tạo lại nó, thêm Gemfile.lock và commit, và đẩy lại vào heroku. Tôi nhận được cùng một thông điệp. Vì vậy, một cái gì đó là điều sai lầm. Có cách nào tôi có thể nói với Heroku và git để bắt đầu từ đầu với đá quý? –

+0

Vì vậy, bạn đã chạy 'bundle' và nó tạo ra các gói mà không có lỗi? – s84

+0

Có, cho dù tôi chạy gói hoặc gói cài đặt, tôi không nhận được lỗi và một thông báo như Gói của bạn đã hoàn tất! Sử dụng 'bundle show [gemname]' để xem vị trí gem đã được cài đặt. –

0

Tôi vừa mới có cùng một vấn đề, và cố định sau đó cho tôi:

tôi đã có một sự kết hợp của đá quý được phân nhóm theo yêu cầu (kiểm tra, phát triển vv), và một số đã được sử dụng bởi cả hai ví dụ

group :development do 
    gem "hpricot" 
    gem "ruby_parser" 
    gem "haml-rails", ">= 0.3.4" 
end 

gem "rspec-rails", ">= 2.9.0.rc2", :group => [:development, :test] 

tôi đã xóa những dòng duy nhất, và chỉ cần sao chép chúng vào các khối có liên quan (không KHÔ tôi biết, nhưng những gì heck).

Đã thực hiện một gói nhanh, và hey mau tôi có thể chuyển sang Heroku lần nữa ...

0

Từ những gì tôi đã đọc, đây là vấn đề về cửa sổ.

Why won't Heroku accept my Gemfile.lock in Windows?

Tôi đã dành giờ cố gắng để con số này ra và không có con xúc xắc. Đã đến lúc chuyển sang một máy ảo và thử ở đó. Rất tiếc.

0

tôi đã nhận được báo lỗi tương tự, và chạy đoạn mã sau vào dòng lệnh giải quyết nó:

$ Heroku cấu hình: set BUNDLE_WITHOUT = "Phát triển: test"


Tôi nghĩ rằng gemfile các vấn đề liên quan được mô tả ở trên là các chuỗi màu đỏ.

0

Hoặc có thể Heroku đang gặp sự cố về API và bị lỗi. Kiểm tra https://status.heroku.com/

Điều này đã xảy ra với tôi hôm nay với ứng dụng hoàn thiện.

Các vấn đề liên quan