Tôi không thực sự hiểu cách Composer hoạt động với cài đặt ổn định tối thiểu.Gói không có sẵn trong phiên bản đủ ổn định theo cài đặt độ ổn định tối thiểu
Tôi có hai gói. Giả sử, PackageA
và PackageB
.
Các composer.json
tập tin của PackageA
trông như thế này:
{
"name": "vendor/packagea",
"minimum-stability": "dev",
"require": {
"vendor/packageb": "dev"
}
}
Vì vậy, đòi hỏi PackageA
PackageB
. Các json của PackageB
trông như thế này:
{
"name": "vendor/packageb",
"minimum-stability": "dev"
}
Vì vậy, cả hai nói sự ổn định tối thiểu là dev
. Vì vậy, tôi cho rằng khi tôi làm:
composer create-project vendor/packagea
Nhưng sau đó nó than phiền với thông điệp:
[InvalidArgumentException]
Could not find package vendor/packagea with stability stable.
Mà tôi thấy lạ, bởi vì tôi sẽ giả định rằng cài đặt sự ổn định tối thiểu để dev
sẽ kéo gói từ nhánh "phát triển" của nó. Mà trong trường hợp của github luôn luôn là dev-master
.
Vì vậy, tôi đã cố gắng để cài đặt nó bằng cách nói với nhà soạn nhạc gì chi nhánh để sử dụng:
composer create-project vendor/packagea testFolder dev-master
Nhưng sau đó nó phàn nàn rằng nó không thể tìm thấy PackageB
:
Installing dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- The requested package vendor/packageb dev could not be found.
Sau đó, làm thế nào tôi có thể cài đặt gói của tôi? Tôi vẫn đang phát triển vì vậy tôi không muốn tạo ra một thông cáo cho PackageA và PackageB chưa ...
Thay đổi 'require' thành' dev-master' hoạt động thực sự. Cũng phải cài đặt nó bằng tùy chọn 'dev-master'. Nhưng nó vẫn có vẻ lạ với tôi. Loos như 'dev' là hoàn toàn vô dụng vì nó thực sự không làm bất cứ điều gì cho tôi. – Vivendi
Yêu cầu '* @ dev' chẳng hạn sẽ là một ràng buộc phiên bản hợp lệ cho phép các phiên bản dev, nhưng bản thân dev có nghĩa là nó cố gắng thực hiện khớp chính xác cho phiên bản được gọi như thế, không tồn tại. – Seldaek
sẽ không hoạt động với nhà soạn nhạc 1.0-dev 2015-07-21: 'Không hợp lệ được cung cấp (= dev) phải là một trong: ổn định, RC, beta, alpha, dev' phải là -sdev: ' composer create-project vendor/packagea -sdev' – dave