2015-01-24 21 views
7

Có một số câu trả lời cho biết sử dụng gem 'cocoapods', '0.33.1' hoặc gem 'pod', '0.33.1Làm thế nào để chuyển đổi phiên bản cocoapods (hoặc đá quý khác) trên dòng lệnh?

nhưng cách này không hiệu quả.

ERROR: While executing gem ... (Gem::CommandLineError) Unknown command cocoapods,

Trong một dự án tôi cần phải sử dụng 0.33.1, nhưng 0.34.4 ở khác. Làm thế nào để chuyển đổi phiên bản cocoapods nhanh chóng trên dòng lệnh? Tôi không muốn sử dụng cài đặt hoặc gỡ cài đặt gem.

Tôi đang sử dụng rbenv với phiên bản ruby ​​2.0.0p0. Tiếp tục sử dụng rbenv được ưu tiên nhưng tôi có thể chuyển sang rvm hoặc ruby ​​thuần túy chỉ khi không có tùy chọn nào khác.

Cảm ơn.

+0

vấn đề với việc sử dụng phiên bản mới nhất trong cả hai dự án là gì? –

+0

Nó phá vỡ mọi thứ nếu tôi sử dụng 0,34,4 trong một dự án. Đội quyết định ở lại với 0.33.1. Điều này không thể thay đổi tại thời điểm này. –

+0

Tôi chắc chắn rằng mọi vấn đề bạn đang gặp đều có thể được giải quyết. Nhưng bỏ qua rằng bạn nên rất cảnh giác với việc sử dụng phiên bản cũ của CocoaPods. Bất cứ lúc nào các thông số kỹ thuật repo hỗ trợ cho các phiên bản cũ có thể được gỡ bỏ, để lại cho bạn với một xây dựng bị hỏng. –

Trả lời

16

Bạn có thể làm như sau để sử dụng các phiên bản khác nhau:

pod _0.34.4_ install 

hoặc

pod _0.34.1_ install 
7

Đây là chính xác mục đích của Bundler

Trong một dự án, bạn chỉ định này trong Gemfile:

gem 'cocoapods', '0.33.1' 

cùng với tất cả các đá quý khác .. và chạy bundle install để cài đặt chúng.

Có một số bước khác để đảm bảo bạn tải những viên đá quý đó từ trình bao, tôi đã đọc trang web đó để xem tài liệu đầy đủ.

Các dự án đường ray đã được thiết lập cho bạn, nhưng nếu đây là một dự án ruby ​​cũ đơn giản, bạn phải tự lắp dây.

+0

không có Gemfile. Tôi chỉ cần chuyển đổi phiên bản cocoapods trên dòng lệnh. –

+3

Tôi khuyên bạn nên thêm Gemfile và các phần liên quan của trình bao vào chương trình. – DGM

+0

Đây là những dự án ios, chúng tôi cố gắng không thêm bất kỳ tập tin đá quý nào trong dự án. Điều này sẽ làm việc nhưng không phải cho chúng tôi. Tôi đang đưa ra 1 nhưng không thể chấp nhận nó như là câu trả lời. –

2

FYI Tôi đang sử dụng giải pháp tạm thời sau. Vì tôi đang sử dụng rbenv, tôi cài đặt các phiên bản cocoapod khác nhau theo các phiên bản ruby ​​khác nhau. Ví dụ,

rbenv global 2.1.0 gem install cocoapods -v 0.34.4 rbenv global 2.0.0-p0 gem install cocoapods -v 0.33.1

Khi tôi làm việc trên các dự án Xcode khác nhau mà đòi hỏi phiên bản khác của Cocoapods, tôi chỉ cần chuyển đổi phiên bản ruby ​​on the fly, và Cocoapods phiên bản được chuyển cho phù hợp.

Như tôi đã đề cập đây là các dự án xCode và chúng tôi không được phép thêm gemfile hoặc cài đặt gem trong thư mục dự án. Vì vậy, điều này làm việc cho tôi.

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