教程¶
在开发周期中使用标签¶
Anaconda.org标签可用于促进开发周期并组织正在开发、测试和生产中的代码,而不会影响非开发用户。使用标签,您可以将文件上传到特定标签,因此只有将该标签放入他们搜索的 URL 中的用户才能找到它。
使用 Anaconda Client,包
开发人员可以创建其他标签,例如 development
labels/dev
、 testlabels/test
或其他标签,只有在用户指定标签时才会搜索这些标签。以下搜索示例使用的命名空间为travis
:
- https://anaconda.org/travis/labels/main – 默认搜索的标签。
- https://anaconda.org/travis - 与默认标签相同,带有
main
隐式。 - https://anaconda.org/travis/labels/dev – 包含开发中的包。
- https://anaconda.org/travis/labels/test – 包含准备测试的包。
- https://anaconda.org/travis/labels/any-custom-label – 您想使用的任何标签。
在本示例中,我们将向您展示如何使用test
标签,以便您可以上传文件而不会影响您的生产质量包。如果没有--label
参数,默认标签是
main
。
使用终端窗口或 Anaconda Prompt 执行以下步骤:
让我们从 conda 包开始。如果您没有,请使用我们的示例 conda 包。在构建包之前,将
meta.yaml
文件中 的版本编辑anaconda-client/example-packages/conda/
为2.0
:git clone https://github.com/Anaconda-Platform/anaconda-client/ cd anaconda-client/example-packages/conda/ nano meta.yaml # Bump version to 2.0 conda config --set anaconda_upload no conda build .
使用客户端上传命令将您的测试包上传到 Anaconda.org 。
添加该
--label
选项会告诉 Anaconda.org 使上传内容仅对指定该标签的用户可见:anaconda upload /path/to/conda-package-2.0.tar.bz2 --label test
注意:替换
/path/to/
为您存储包的实际路径。您现在可以看到,即使您搜索 conda
main
,也看不到2.0
测试包的版本。这是因为您需要告诉 conda 查找您的新test
标签。该
--override
参数告诉 conda 不要使用~/.condarc
文件中的任何通道。没有
2.0
结果:conda search --override -c USERNAME conda-package
注意:将 USERNAME 替换为您的用户名。
您的
2.0
包裹在这里:conda search --override -c USERNAME/label/test conda-package
注意:替换
USERNAME
为您的用户名。您可以将标签
USERNAME/label/test
提供给测试人员。注意:替换
USERNAME
为您的用户名。一旦他们完成测试,您可能需要将
test
包裹复制 回您的main
标签:anaconda label --copy test main
您还可以从仪表板管理您的包裹标签:
https://anaconda.org/USERNAME/conda-package
。你的版本
2.0
现在是main
:conda search --override -c USERNAME conda-package
注意:替换
USERNAME
为您的用户名。
如果您使用anaconda-client
1.7 或更高版本,则可以使用将包从一个标签移动到另一个标签:anaconda move
anaconda move --from-label OLD --to-label NEW SPEC
用旧标签替换OLD,用新标签替换NEW,用要移动的包裹替换SPEC。SPEC 可以是“用户/包/版本/文件”或“用户/包/版本”,在这种情况下,它会移动该版本中的所有文件。