Tôi có một môi trường conda được đặt tên old_name
, làm thế nào tôi có thể thay đổi tên của nó thành new_name
mà không phá vỡ các tài liệu tham khảo?
Tôi có một môi trường conda được đặt tên old_name
, làm thế nào tôi có thể thay đổi tên của nó thành new_name
mà không phá vỡ các tài liệu tham khảo?
Câu trả lời:
Bạn không thể.
Một cách giải quyết khác là tạo môi trường nhân bản, rồi xóa môi trường gốc:
(hãy nhớ về việc hủy kích hoạt môi trường hiện tại với deactivate
trên Windows và source deactivate
trên macOS / Linux)
conda create --name new_name --clone old_name
conda remove --name old_name --all # or its alias: `conda env remove --name old_name`
Có một số nhược điểm của phương pháp này:
--offline
cờ để vô hiệu hóa nó,Có một vấn đề mở yêu cầu tính năng này.
conda create --name new_name --clone old_name
sau đó bạn có thể loại bỏ cái cũ.
.bashrc
không còn làm việc nữa và cố gắng chạy pytest
sẽ thất bại, cố gắng tham khảo môi trường đã bị xóa. Tôi đã thử vỏ mới và khởi động lại không có may mắn. Cuối cùng phải thổi bay môi trường mới, sau đó chỉ cần bắt đầu với một cài đặt sạch. Chậm hơn, nhưng dường như thực sự làm việc bây giờ.
Dựa trên nhận xét hữu ích của người lùn , tôi đã có thể thực hiện điều này trong một bài viết của Bash:
conda create --name envpython2 --file <(conda list -n env1 -e )
Env tên xấu của tôi là "env1" và cái mới tôi muốn sao chép từ nó là "envpython2".
PackagesNotFoundError: The following packages are not available from current channels
với kịch bản này. Kịch bản này có thể chỉ hoạt động khi bạn không có các gói được cài đặt với pip và không có sẵn trong conda trong môi trường hiện tại?
conda create --name new_name --copy --clone old_name
tốt hơn
Tôi sử dụng conda create --name new_name --clone old_name
mà không có --copy
nhưng gặp phải vỡ pip ...
url sau có thể giúp Cài đặt tenorflow trong môi trường conda nhân bản phá vỡ môi trường conda mà nó được sao chép từ