Bagaimana saya bisa memaksa Composer untuk menginstal cabang dev di atas rilis yang stabil?

14

Saya bereksperimen dengan Bootstrap 3 di Drupal 8 dan saya ingin tetap di cabang dev bootstrap.

Dalam buku saya composer.json, saya menulis baris berikut berdasarkan Drupal Packagist :

"drupal/bootstrap": "8.3.*@dev",

Namun, ketika saya menjalankannya composer update, ia mengunduh 8.3.0-beta2(2015-Des-19) alih-alih rilis dev terbaru (2016-Feb-20).

Gathering patches for root package.
Loading composer repositories with package information
Updating dependencies (including require-dev)
Gathering patches for root package.
Gathering patches for dependencies. This might take a minute.
  - Installing drupal/bootstrap (8.3.0-beta2)
    Downloading: 100%
    Downloading: 100%

Untuk memastikan itu bukan masalah caching, saya berlari:

composer selfupdate
composer clear-cache
composer update

Tapi itu melakukan hal yang sama - instal beta2.

Bagaimana cara saya memaksanya untuk mengunduh rilis dev?

Patrick Kenny
sumber

Jawaban:

22

Sementara itu akan menginstal rilis dev terbaru dari modul / tema Drupal untuk hanya melakukan hal berikut:

composer require drupal/bootstrap:3.x-dev

Saya berpendapat praktik terbaik ketika menginstal versi dev modul adalah untuk memastikan Anda akan mendapatkan komit yang Anda inginkan (yang mungkin bukan yang terbaru), jadi saya akan melakukan hal berikut:

composer require drupal/bootstrap:3.x-dev#5670922dea05fffb6506a6cd5d53546b9fae8df9

Atau Anda dapat menambahkannya secara manual ke kebutuhan Anda di composer.json (seperti di bawah ini) dan kemudian pada baris perintah jalankan composer install

"drupal/bootstrap": "3.x-dev#5670922dea05fffb6506a6cd5d53546b9fae8df9",

Untuk mendapatkan komit, Anda harus pergi ke http://cgit.drupalcode.org/bootstrap/log/ dan menemukan komit yang Anda inginkan (hash komit adalah id di halaman komit). btw: hash di atas bukanlah komitmen nyata pada proyek Bootstrap

Duncanmoo
sumber
15

Anda dapat menyimpan pengaturan prefer-stable yang asli. The @devdalam 8.3.*@devadalah bendera stabilitas untuk paket yang diberikan. Cara termudah untuk memaksa versi dev paket adalah dengan menggunakan batasan versi yang berbeda. Gunakan 8.3.x-devsebagai gantinya, kendala versi ini referensi ke dalam 8.x-3.xcabang dan bekerja secara independen dari prefer-stabledan minimum-stability.

webflo
sumber
8
Seorang komposer memerlukan perintah yang sesuai dengan ini akan terlihat seperti inicomposer require "drupal/page_manager:1.x-dev"
daniels