Để trả lời chính xác hơn cho câu hỏi:
conda (là conda cho miniconda như đối với Anaconda) cập nhật tất cả trừ CHỈ trong một phiên bản cụ thể của gói -> chính và phụ. Đó là mô thức.
Trong tài liệu bạn sẽ tìm thấy "LƯU Ý: Conda cập nhật lên phiên bản cao nhất trong sê-ri của nó, vì vậy Python 2.7 cập nhật lên mức cao nhất có sẵn trong loạt 2.x và 3.6 cập nhật lên mức cao nhất có sẵn trong loạt 3.x."
tài liệu
Nếu Wang không đưa ra một ví dụ có thể tái tạo, người ta chỉ có thể hỗ trợ. ví dụ như đó thực sự là môi trường ảo mà anh ấy muốn cập nhật hay Wang có thể có được những gì anh ấy / cô ấy muốn
conda update -n ENVIRONMENT --all
* Vui lòng đọc tài liệu trước khi thực hiện "cập nhật --all"! Điều này không dẫn đến một bản cập nhật của tất cả các gói theo bản chất. Vì conda cố gắng giải quyết mối quan hệ phụ thuộc giữa tất cả các gói trong môi trường của bạn, điều này có thể dẫn đến các gói DOWNGRADED mà không có cảnh báo.
Nếu bạn chỉ muốn cập nhật gần như tất cả, bạn có thể tạo một tệp ghim
echo "conda ==4.0.0" >> ~/miniconda3/envs/py35/conda-meta/pinned
echo "numpy 1.7.*" >> ~/miniconda3/envs/py35/conda-meta/pinned
trước khi chạy cập nhật.
Nếu sau này bạn muốn bỏ qua tệp trong env của mình để cập nhật, bạn có thể làm:
conda update --all --no-pin
Bạn không nên cập nhật - tất cả. Nếu bạn cần nó tuy nhiên bạn là người tiết kiệm để kiểm tra điều này trong một môi trường nhân bản.
Bước đầu tiên phải luôn luôn là sao lưu thông số kỹ thuật hiện tại của bạn:
conda list -n py35 --explicit
(nhưng ngay cả như vậy không phải lúc nào cũng có một liên kết đến nguồn có sẵn - như đối với các tiện ích mở rộng jupyterlab)
Tiếp theo bạn có thể sao chép và cập nhật:
conda create -n py356 --clone py35
conda activate py356
conda config --set pip_interop_enabled True # for conda>=4.6
conda update --all
cấu hình conda
cập nhật:
Bởi vì ý tưởng về conda là tốt nhưng nó không hoạt động tốt cho các môi trường phức tạp, cá nhân tôi thích sự kết hợp của nix-shell (or lorri) and poetry
[như pip / conda cao cấp .-)] ( intro po2nix ).
Cuối cùng, nếu bạn thực sự cần phải làm việc với các gói không tương thích do phụ thuộc vào nó, có thể với các công nghệ như NixOS / nix-pkgs .
conda update --all --alt-hint
và xem liệu nó có cho bất kỳ đầu ra nào không ... Hoặc chỉ cần thửconda update scipy
và xem điều gì sẽ xảy ra (có lẽ với--alt-hint
cờ)