2

我观看了这个视频并尝试使用源发布工具。

首先,这是文档中不确定的部分:

要创建源版本,只需运行 buildout-source-release 脚本,传递文件 URL 或 subversion URL [3] 以及要使用的配置文件的名称。文件 URL 对测试很有用,并且可以与非颠覆源代码控制系统一起使用。

他们的意思是什么文件网址?项目根?

其次,另一个参数应该是 buildout.cfg 的路径。当我在项目中使用通常的 buildout.cfg 时,sourcerelease 会重新构建整个项目。如果它在途中崩溃,bin/buildout-source-release不见了,我必须bin/buildout再次运行。这是可以避免的吗?

第三,buildout-source-release下载包(即使它们是固定的并且这些版本在 中~/.buildout)。我还使用 buildout.cfg 中指定的自定义包缓存:

[buildout]
index = http://pypi.*****.com

bsr 也忽略它!当然,在我拥有的大约 50 个包中,有一些目前不可用(大多数情况下 Scipy 服务器已关闭)。

如何让它重用我的本地包源?

4

1 回答 1

1

该脚本通过将提供的 Subversion URL 检出到一个临时目录中,从头开始创建一个完整的发行版,然后在该目录中运行由第二个参数命名的构建配置文件。

或者,代替 Subversion 存储库,它可以只复制文件 URL 指向的目录结构;后者是一种权宜之计,不仅支持 SVN 存储库。例如,您创建 Git 项目的工作副本,然后使用file:///path/to/git/wc/URL 指向它。

该脚本构建您的构建的完全独立副本。为此,它必须创建一个缓存并通过让配方完成其工作来填充它。稍后,安装脚本会重用该缓存来运行安装。

此外,recipes 使用自己的方法检查缓存和下载资源,buildout 不会代表 recipes 维护它。因此,目前还没有适当的机制让脚本确定是否可以从现有缓存中重用任何内容。

于 2012-09-24T12:34:25.167 回答