2

任何使用 buildout 将 tarball 从 Git 中的特定分支下载到我的 egg 目录的可靠示例?

我尝试过的所有答案似乎都在继续从 PyPi 中获取版本。

我正在尝试获取 MongoKit 的开发分支...( http://github.com/namlook/mongokit/tarball/devel#egg=mongokit)作为压缩包...

谢谢。

4

2 回答 2

2

您可以通过添加指向项目 tarball URL 的 find-links url 和 #egg=packagename 后缀来添加托管在 git-hub 上的任何 python 包。正如您已经发现的那样,对于 mongokit 来说:

http://github.com/namlook/mongokit/tarball/devel#egg=mongokit

您可以向该 URL 添加一个版本号,以便为构建提供一个比 PyPI 上的 URL 更喜欢 github URL 的理由。当版本号匹配时,这是需要的,在回答时 mongokit 就是这种情况。该版本附加了一个破折号:

http://github.com/namlook/mongokit/tarball/devel#egg=mongokit-0.6yourmarker1

我在版本号和计数器上添加了一个标记;添加标记意味着 github 版本将被视为比在 PyPI 上找到的版本更新,但如果发布了 0.7,它将是较新的版本。你可以做yourmarker任何你喜欢的事情,如果你需要从 github 获取最新的更改,你可以升级号码(否则鸡蛋将被缓存在本地)。

我还会将该版本固定在构建中。

所以一个简单的构建将是:

[buildout]
parts = whatever
find-links =
    http://github.com/namlook/mongokit/tarball/devel#egg=mongokit-0.6yourmarker1
eggs = mongokit
versions = versions

[versions]
mongokit = 0.6yourmarker1

从那里开始,您可以使用 mongokit 作为 setuptools 依赖项 ( install_requires=['mongokit'])。

于 2011-06-25T22:19:37.157 回答
0

try the following in your buildout.cfg

[mongokit]
recipe = zerokspot.recipe.git
repository = git://repopath/mongokit.git
branch = devel
as_egg = true

The documentation is here.

于 2011-06-25T16:30:54.810 回答