管理您的托管包#
向包添加协作者#
您可以添加非组织用户的其他用户来协作处理您的包。
从您的仪表板中,选择包。
要显示包设置,请选择设置选项。
要显示当前协作者,请选择协作者选项。
输入您要添加为协作者的人员的用户名,然后单击添加。
注意
所有协作者都获得包的完整读/写权限,即使是私有包。
从包中删除协作者#
要撤销之前授予协作者的包访问权限
从您的仪表板中,选择包。
要显示包设置,请选择设置选项。
要显示当前协作者,请选择协作者选项。
单击协作者旁边的红色 X 以撤销其访问权限。
将包转移到新所有者#
默认情况下,当您创建或添加包时,它们会附加到您的个人配置文件。您可以将所有权转移到您控制的另一个所有者帐户,例如您管理的组织配置文件。
要将包转移到新所有者
从您的仪表板(或您管理的组织的仪表板)中,选择您要转移所有权的包。系统会显示该包的选项。
要显示包设置,请选择设置选项。
选择管理选项。
在将此包转移到新所有者下,单击转移。
为新所有者选择组织名称。
单击转移所有权。
复制包#
以下命令示例说明如何将包从 conda-forge
通道复制到名为 jsmith
的个人通道
anaconda copy conda-forge/glueviz/0.10.4 --to-owner jsmith
conda-forge/glueviz/0.10.4
是一个“spec”,可以使用两种格式之一进行格式化:user/package/version
或 user/package/version/filename
。
注意
anaconda copy
命令 from-channel
和 to-channel
已被弃用。如果您尝试运行 anaconda copy --from-channel conda-forge --to-channel jsmith glueviz
,您将收到错误 Label conda-forge does not exist
。
注意
如果包 glueviz/0.10.4
已存在于用户 jsmith
,您将收到以下错误消息:File conflict while copying!
。如果您仍然要复制包,请尝试在命令前添加以下标志之一
--replace
- 允许您覆盖已存在的包--update
- 允许您向现有包添加缺失的元数据
删除包的先前版本#
要从 Anaconda.org 中删除您的包的先前版本之一
选择包名称。
导航到文件选项卡。
选中要删除的版本左侧的复选框。
在操作菜单中,选择删除。
要使用 Anaconda Prompt(macOS/Linux 上的终端)删除您的包的先前版本之一,请运行
# Replace <USERNAME> with your username
# Replace <PACKAGE> with the package name
# Replace <VERSION_NUMBER> with the desired version
anaconda remove <USERNAME>/<PACKAGE>/<VERSION_NUMBER>
您现在可以在您的个人资料页面 http://anaconda.org/<USERNAME>/<PACKAGE>
上看到更改,其中 <USERNAME>
是您的用户名,<PACKAGE>
是包名称。
隐藏包安装说明#
在您将包上传到帐户或组织后,您可以控制包的下载页面上显示的安装说明。安装说明将根据包的标签或包类型(conda 或标准 Python)而有所不同。
要编辑包安装说明的可见性
删除包#
要从 Anaconda.org 中删除包及其所有版本
选择包名称。
选择设置选项。
选择管理选项。
单击删除。
要使用 Anaconda Prompt(macOS/Linux 上的终端)删除包及其所有版本,请运行
# Replace <USERNAME> with your username
# Replace <PACKAGE> with the package name
anaconda remove <USERNAME>/<PACKAGE>
您现在可以在您的个人资料页面 http://anaconda.org/<USERNAME>
上看到更改,其中 <USERNAME>
是您的用户名。
更新包元数据#
您的包的 meta.yaml 文件中提供的大部分元数据会显示在您的包的下载页面上。这些信息包括您包的许可证、描述、Git 仓库 URL 和文档 URL。有关 conda-build 的 meta.yaml 文件中通常包含的内容的更多信息,请参阅 conda-build 文档。
Anaconda Client 会自动更新您的包上传的 meta.yaml 文件中定义的元数据,只要包版本号之前从未上传过。要在不需要新的包版本的情况下更新您的元数据,请使用 --force-metadata-update
。
anaconda upload /your/path/conda-package.tar.bz2 --force-metadata-update
使用 .conda 压缩格式#
目前,当您使用 conda build
创建包时,这些包会被压缩为 .tar.bz2
格式。自 conda 诞生以来,一直使用这种格式,并且与现代压缩格式相比,它变得非常慢。考虑到这一点,创建了 .conda
压缩格式。请参阅 Conda 包和 了解和改进 Conda 性能 博客文章的下载和解压缩包部分,以获取有关 .conda
的更详细信息。
关于 .conda
格式,最重要的一点是要理解,它允许更快地访问包的元数据,方法是将该元数据压缩到其自己的 tarball 文件中,该文件与包内容的其他部分分开。
要了解 .conda
格式如何大幅提高包解压缩速度,请尝试以下操作
#Install the conda-package-handling package
conda install conda-package-handling
#Transmute a .tar.bz2 package format into a .conda format
#cph transmute IN_FILE(file to convert) OUT_EXT(extension to convert to, i.e. .conda)
cph transmute mkl-2018.0.3-1.tar.bz2 .conda
#Test the speed of extracting the .tar.bz2 file versus the .conda file
$ time cph extract mkl-2018.0.3-1.tar.bz2 --dest mkl-a
cph extract mkl-2018.0.3-1.tar.bz2 --dest mkl-a 18.16s user 0.59s system 98% cpu 19.015 total
$ time cph extract mkl-2018.0.3-1.conda --dest mkl-b
cph extract mkl-2018.0.3-1.conda --dest mkl-b 1.41s user 0.65s system 87% cpu 2.365 total
正如您所见,.conda
文件的解压缩速度几乎比 .tar.bz2
文件快一个数量级。
.conda
文件可以使用 anaconda upload
上传到 Anaconda.org,就像任何 .tar.bz2
文件一样。创建 .conda
包的当前工作流程是使用 conda build
构建它们,然后使用 cph transmute
将 .tar.bz2
文件转换为 .conda
文件,然后按照 上传 conda 包 部分中的描述正常上传它们。