Tôi có dòng này trong tập tin composer.json tôi:Dấu ngã (~) có nghĩa gì trong tệp composer.json của tôi?
"require": {
...
"friendsofsymfony/user-bundle": "[email protected]",
...
},
không dấu ngã ~
trong [email protected]
chính xác nghĩa là gì? Đó có phải là trình giữ chỗ và luôn luôn tìm nạp các mục con như 1.2.0
, 2.2.0
, 3.2.0
và như vậy không? Không có ý nghĩa (và sẽ được thực hiện bởi ký tự đại diện *
).
composer.json documentation không nói gì về dấu ngã.
Tôi hỏi vì tôi vừa đọc về một số security issue in the Symfony blog và họ khuyên bạn nên nâng cấp lên phiên bản 1.3.3. Nhưng tìm ra phiên bản của FOSUserBundle không phải là dễ dàng (tôi không thể tìm thấy một tập tin có chứa phiên bản).
Một nguyên tắc-of-thumb cách đơn giản tôi muốn đặt nó là ~ cho phép chữ số cuối cùng đi lên. ví dụ. '~ 2.2' có nghĩa là 2.2 và bất kỳ 2.x nào trong đó x là 2 hoặc cao hơn. '~ 2.1.3' trên cũng là bất kỳ 2.1.x trong đó x là 3 hoặc cao hơn. – Seldaek
'~ 2.0' khác với' 2. * 'như thế nào? Nó chỉ hữu ích nếu chữ số cuối cùng không phải là 0? – Jesse
~ 2.0 và 2. * có cùng NHƯNG ~ 2.3 và 2. * khác nhau vì ~ 2.3 không cho phép các phiên bản dưới 2.3 trong khi 2. * cho phép 2.0, 2.1, 2.2, v.v. – AlterPHP