ฉันมีชื่อสภาพแวดล้อม conda old_name
ฉันจะเปลี่ยนชื่อเป็นnew_name
ไม่มีการอ้างอิงได้อย่างไร
ฉันมีชื่อสภาพแวดล้อม conda old_name
ฉันจะเปลี่ยนชื่อเป็นnew_name
ไม่มีการอ้างอิงได้อย่างไร
คำตอบ:
คุณทำไม่ได้
วิธีแก้ปัญหาหนึ่งคือการสร้างสภาพแวดล้อมแบบโคลนแล้วลบแบบเดิม:
(โปรดจำไว้ว่าเกี่ยวกับการปิดใช้งานสภาพแวดล้อมปัจจุบันด้วยdeactivate
บน Windows และsource deactivate
บน 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`
วิธีนี้มีข้อเสียหลายประการ:
--offline
flag เพื่อปิดการใช้งานมีปัญหาแบบเปิดที่ขอคุณสมบัตินี้
conda create --name new_name --clone old_name
จากนั้นคุณสามารถลบเก่า
.bashrc
ไม่ทำงานอีกต่อไปและการพยายามเรียกใช้pytest
จะล้มเหลวโดยพยายามอ้างอิงสภาพแวดล้อมที่ถูกลบไปแล้วในตอนนี้ ฉันลองกระสุนใหม่แล้วรีสตาร์ทโดยไม่มีโชค จบลงด้วยการต้องระเบิดสภาพแวดล้อมใหม่จากนั้นเริ่มต้นด้วยการติดตั้งใหม่ทั้งหมด ช้าลง แต่ดูเหมือนจะใช้งานได้จริงตอนนี้
จากความคิดเห็นที่เป็นประโยชน์ของdwandersonฉันสามารถทำสิ่งนี้ได้ใน Bash one-liner:
conda create --name envpython2 --file <(conda list -n env1 -e )
ชื่อ env ที่ไม่ดีของฉันคือ "env1" และอันใหม่ที่ฉันต้องการโคลนจากมันคือ "envpython2"
PackagesNotFoundError: The following packages are not available from current channels
กับสคริปต์นี้ สคริปต์นี้อาจใช้งานได้เฉพาะเมื่อคุณไม่มีแพ็คเกจที่ติดตั้งด้วย pip และที่ไม่สามารถใช้งานได้ใน conda ในสภาพแวดล้อมที่มีอยู่
conda create --name new_name --copy --clone old_name
จะดีกว่า
ฉันใช้ตัวเลือกconda create --name new_name --clone old_name
ที่ไม่มี--copy
แต่พบว่าตัวแบ่ง pip เป็น ...
URL ต่อไปนี้อาจช่วยใน การติดตั้ง tensorflow ในสภาพแวดล้อมแบบ condoned ที่ทำให้เกิดสภาพแวดล้อมแบบ conda ที่ถูกโคลน