We are a small company (its Microsoft store), in which we are currently using subversion with VisualSVN installed (btw is fairly easy to set up). Currently I am evaluating Mercurial due to a branching nightmare in svn.
So, first I followed http://www.firegarden.com/software/hosting-mercurial-repo-iis7-windows-server-2008r2-x64-python-isapi-cgi with the latest mercury source code 1.9.2, and python 2.7 got the following error
Failed to import callback module 'hgwebdir_wsgi' The specified module could not be found.
so I scratched and then I followed this http://www.jeremyskinner.co.uk/mercurial-on-iis7/ and it worked until I reached the Enable SSL step, which is the problem. I even install ssl certificates using OpenSSL http://www.dylanbeattie.net/docs/openssl_iis_ssl_howto.html yet nothing. this is the error i get
URLError: [Errno 10054] An existing connection was forcibly closed by the remote host [command returned code 255...]
On the server side, I have this hgweb.config
[collections] C:\repository\hg = C:/repository/hg [web] #push_ssl = false allow_push = * baseurl = /hg cacerts =
web.config
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <handlers> <add name="Python" path="*.cgi" verb="*" modules="CgiModule" scriptProcessor="C:\Python27\python.exe -u "%s"" resourceType="Unspecified" /> </handlers> <rewrite> <rules> <rule name="rewrite to hgweb" patternSyntax="Wildcard"> <match url="*" /> <conditions> <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> </conditions> <action type="Rewrite" url="hgweb.cgi/{R:1}" /> </rule> </rules> </rewrite> <security> <requestFiltering> <requestLimits maxAllowedContentLength ="2147482624" /> </requestFiltering> </security> </system.webServer> <system.web> <httpRuntime executionTimeout="540000" maxRequestLength="2097151"/> </system.web>
hgrc client side
[paths] default = https://webtest/hg/test/ [hostfingerprints] webtest = 50:de:a4:d9:72:59:68:fd:91 ...
EDIT I tried installing MacHg on my macbook for testing. I used http://machghelp.jasonfharris.com/kb/connections/how-do-i-add-a-server-certificate-or-fingerprint-for-https as a walkthrough, and it WORKS !! so this excludes the server (for example, the server can push and pull with both http and https), so now I'm sure its windows / TortoiseHg have problems. (but after these steps for tortoiseHg it gives me nothing :()
EDIT2 Another conclusion ... I can't even clone using https, it only works for http. I tried to clone one of the codeplex projects using https and it works! ... It really upsets
Am I missing something? Any help would be appreciated.