Python Buildout/开发者先生随机未能从Git中提取

Python Buildout/开发者先生随机未能从Git中提取,python,django,git,github,buildout,Python,Django,Git,Github,Buildout,我正在使用和来设置我的环境(用于开发和部署)。此设置的一部分是提取此项目所需的私有git存储库。(这就是我使用Mr.Developer的原因。) 大多数时候,当我运行buildout时,一切都很好 但是,在输出下面的行之后,它偶尔会停止。它没有超时或任何东西,但它无限期地挂在这里: mr.developer: Queued 'django-myotherproject' for checkout. 在正常/成功构建时,它会输出: mr.developer: Queued 'django-myo

我正在使用和来设置我的环境(用于开发和部署)。此设置的一部分是提取此项目所需的私有git存储库。(这就是我使用Mr.Developer的原因。)

大多数时候,当我运行buildout时,一切都很好

但是,在输出下面的行之后,它偶尔会停止。它没有超时或任何东西,但它无限期地挂在这里:

mr.developer: Queued 'django-myotherproject' for checkout.
在正常/成功构建时,它会输出:

mr.developer: Queued 'django-myotherproject' for checkout.
mr.developer: Cloned 'django-myotherproject' with git.
Develop: '/projects/myproject/develop/django-myotherproject'
我最初的想法:

我认为可能是我的git存储库主机超时了。然而,我刚刚切换到github,我仍然遇到这个问题


由于这只是随机发生的,我不认为这是我在构建配置文件中指定的设置问题。

您使用的是哪个版本的mr.developer,3周前(2012年2月底)发布的版本包含了对线程锁处理的重构

从导致重构的原因:

最近,我注意到一个非常奇怪的行为,在使用mr.developer时,构建有时会永远挂起,永远不会完成,就在它签出包时

这听起来正是你所看到的问题

编辑:现在退出,并将线程控制添加到配置中。现在,您可以创建一个
~/.buildout/mr.developer.cfg
文件,将线程数设置为1,以完全避免此问题:

[mr.developer]
threads = 1

默认值为5。

我使用的是版本1.20,但不幸的是,我仍然存在此问题。看来即将发布的1.21将通过允许您调整使用的线程数来解决此问题,请参阅提交。Florian还没有发布1.21版本,所以需要一些耐心;我对答案进行了编辑,添加了一个关于新线程选项的部分。