2 回答

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超10個(gè)贊
Conda CLI 中的選項(xiàng)
這就是--from-history
旗幟的用途,但不完全是這樣。它不會(huì)包含每個(gè)包的確切構(gòu)建信息,而是僅包含所謂的顯式規(guī)范,即用戶(hù)通過(guò) CLI 顯式請(qǐng)求的規(guī)范(例如,conda install scipy=1.3.1
)。試試:
conda?env?export?--from-history?--name?my_env?>?myenv.yml
僅當(dāng)用戶(hù)最初在安裝過(guò)程中包含版本時(shí),這才會(huì)包含版本。因此,創(chuàng)建新環(huán)境很可能不會(huì)使用完全相同的版本和構(gòu)建。另一方面,如果用戶(hù)最初包含版本和構(gòu)建之外的附加約束,它們也將被包含(例如,通道規(guī)范conda install conda-forge::numpy
將導(dǎo)致conda-forge::numpy
)。
另一個(gè)值得注意的選項(xiàng)是 flag?--no-builds
,它將導(dǎo)出 YAML 中的每個(gè)包,但忽略構(gòu)建說(shuō)明符。這些標(biāo)志以互斥的方式工作。
污染
如果這還不夠,那么有一個(gè)名為conda-minify 的外部實(shí)用程序,它提供了一些功能來(lái)導(dǎo)出基于依賴(lài)關(guān)系樹(shù)而不是通過(guò)用戶(hù)的顯式規(guī)范最小化的環(huán)境。

TA貢獻(xiàn)2039條經(jīng)驗(yàn) 獲得超8個(gè)贊
看看pipreqs。它僅根據(jù)您在項(xiàng)目中明確執(zhí)行的導(dǎo)入創(chuàng)建一個(gè)requirements.txt 文件(您甚至可以選擇--no-pin
忽略版本號(hào))。您稍后可以使用此文件通過(guò)conda install --file requirements.txt
.
但是,如果您的目標(biāo)是evironments.yml
文件,則必須手動(dòng)創(chuàng)建它。但這只是從 clean 中復(fù)制并粘貼requirements.txt
。您只需將 conda 與“僅 pip”安裝分開(kāi)即可。
添加回答
舉報(bào)