2011-01-28 132 views
7

我想让Mercurial通过IIS 7.5上的“hgweb.cgi”托管。除了我安装了python 2.6和Mercurial 1.7.3以外,我已根据http://www.jeremyskinner.co.uk/mercurial-on-iis7/配置了一切。当我尝试去hgweb.cgi脚本,我得到以下错误:Mercurial/IIS/No module named osutil

有点搜索后“没有名为osutil模块”,我发现,我需要安装python-开发包,但似乎只适用于Unix。有什么我需要得到这个工作在Windows上?

谢谢。

请注意,我试图善变的二进制文件/ library.zip双方都HgTortoise和可用水银的x86安装位置:

https://www.mercurial-scm.org/downloads

(水银1.7.3 Inno Setup的安装程序 - 86的Windows - 不需要在现有downloads,并在问题中指定的版本管理员权限)

回答

0

看,它看起来像你可能已经安装了TortoiseHg 1.1.8 with Mercurial 1.7.3,这是可能缺少一些python包。

+0

你说得对,当我看着版本时我没有注意。我的问题应该更加明确。我第一次尝试这与TortoiseHg x86,然后我用正常的Mercurial二进制文件(1.7.3)尝试它。我安装了龟,并使用它来检查我的版本,而不是查看其他二进制文件。但无论是正常的二进制文件还是乌龟,我都有同样的问题。 – nlaq 2011-01-28 18:56:20

0

我一直在自己研究这个问题(除了我试图通过ISAPI运行Mercurial),并且它出现1.7.1是最后一个与IIS一起工作的版本,因为msvcr90.dll在之后的所有依赖问题版本,包括新发布的1.8.2。

请参阅this issue,这最终似乎是由这个仍然开放的1岁大的Python issue造成的。
通过对话来判断,修复并不容易。我知道没有解决方法,所以我在此期间被迫使用1.7.1。

编辑:虽然CGI与1.8.2一起工作,所以上述问题似乎只影响通过ISAPI运行Mercurial。

1

我尝试使用Mercurial 2.1.1重新创建HgWeb服务器时遇到了同样的问题。 I posted a question on the Mercurial mailing list.

因为HgWeb需要Python,所以您必须将Mercurial作为Python模块。幸运的是,Mercurial的人supply one;它的标记py2.6与描述

installs Mercurial source as Python modules and thus requires Python 2.6 installed. This is recommended for hgweb setups

有一次,我跑了安装程序,HgWeb开始工作。