2013-08-13 29 views
9

Đang cố cài đặt KnpGaufretteBundle trong dự án Symfony 2.3, tôi không có may mắn. Vấn đề là:Nhà soạn nhạc: cách cài đặt gói `dev` trong Symfony 2.3?

  1. minimum-stability:stable (trong composer.json);
  2. gói mà tôi yêu cầu là dev-master phiên bản vẫn còn.

Reading this trong tài liệu Symfony là bực bội:

Nếu bạn biết về một bó mát hoặc thư viện PHP mà vẫn đòi hỏi một dev ổn định tối thiểu, nói chuyện với các nhà phát triển chì và thuyết phục anh ta để gắn thẻ bản phát hành ổn định.

Tôi không thay đổi sự ổn định tối thiểu của dự án toàn-dev, vì nó chắc chắn sẽ làm cho một khổng lồ mớ hỗn độn - Ý tôi là, Tôi không thể sử dụng các gói ổn định và các gói dev bên bên?

Tôi có thiếu gì đó về nhà soạn nhạc?


Chỉnh sửa (ngày 14 tháng 8 2013)

Theo Sven 's câu trả lời dưới đây, tôi đã chỉnh sửa composer.json của tôi (bạn có thể tìm thấy nó here) và nó bắt đầu làm việc. Dù sao, đây là một giải pháp từng phần, bởi vì các bí danh nội tuyến không hoạt động cho các phụ thuộc - vì vậy trong trường hợp của tôi, tôi phải chỉ định tất cả các phụ thuộc của các gói "ít ổn định hơn" trước và bí danh từng gói một.

Trả lời

29

chỉ cần sử dụng

"knplabs/knp-gaufrette-bundle": "[email protected]" 

nếu bạn cần phiên bản mới nhất dev

bạn cũng có thể thay đổi tối thiểu ổn định để dev và thêm "thích ổn định": đúng như thế này:

"minimum-stability": "dev", 
"prefer-stable": true, 

sau đó nhà soạn nhạc sẽ luôn cố gắng tìm một phiên bản ổn định và nếu không có gì tìm thấy cài đặt dev, vì vậy các gói symfony của bạn sẽ vẫn ổn định. Nhưng trong trường hợp nhà soạn nhạc của bạn sẽ cài đặt v0.1.4 (ổn định mới nhất của knplabs/knp-gaufrette-bundle), vì vậy bạn cần dev-master @ dev anyway. thích ổn định chỉ là một gợi ý cho bạn.

+0

Câu trả lời hay ... –

1

Hãy nhìn vào bí danh: http://getcomposer.org/doc/articles/aliases.md

Họ có nghĩa vụ phải cho phép bạn để giải quyết một chi nhánh (mà theo định nghĩa luôn luôn là trong việc phát triển, bởi vì bạn chỉ có thể truy cập mới nhất cam) trong một cách mà chi nhánh nên là phần mở rộng hợp lý của thẻ phiên bản.

Đối với dự án chưa được gắn thẻ, phiên bản thẻ giả định thích hợp sẽ giống như "0.0.0".

Bạn nên thử bí danh nội tuyến cho gói.

+0

Đã chỉnh sửa câu hỏi của tôi - thx để biết thông tin.Dù sao thay đổi chuỗi phiên bản (xem gist) từ dev-master thành 0.0.0 (hoặc 2. *, theo phần 'extra') không thay đổi bất cứ điều gì –

+0

Stupid me: Tôi đang cập nhật composer.json sai. Thực tế, 'dev-master là 0.0.0' trên gói này và các phụ thuộc của nó đã giải quyết vấn đề. Tôi chấp nhận câu trả lời khác mặc dù, vì nó linh hoạt hơn (không cần phải chỉ định phụ thuộc bí danh). Cảm ơn rất nhiều! –

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