Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Hosting Mercurial HG via VisualSVN Server

I have tried to host a Mercurial HG repository using a Scriptalias.

ScriptAlias /hg/ "htdocs/hgwebdir.cgi"

If I go to Chrome it display the contents of the cgi file. In IE it does render however images and links are not displayed. In either case the repository I want to display is not shown.

Has anyone managed to get this working with VisualSVN? Also will this work if I have windows authentication and https?

like image 803
dvkwong Avatar asked Mar 11 '10 21:03

dvkwong


1 Answers

Here's a alternative setup using mod_wsgi (fast!), combined repository directory, and you can manage Mercurial repository level access from the VisualSVN Server GUI.

Download mod_wsgi.so for Apache 2.2 Win32 and place in "C:\Program Files\VisualSVN Server\bin".

Copy hgwebdir.wsgi from your Mercurial installation (contrib directory) to "C:\Program Files\VisualSVN Server\". It should look something like this:

import sys
sys.path.insert(0, "C:\Program Files\Mercurial\library")
from mercurial.hgweb.hgwebdir_mod import hgwebdir
application = hgwebdir('hgweb.config')

Create the config file "C:\Program Files\VisualSVN Server\hgweb.config".

[paths]
/ = c:/Repositories/*

Paste the following in "C:\Program Files\VisualSVN Server\conf\httpd-custom.conf". You should adjust the Auth* values based on the section of httpd.conf.

LoadModule wsgi_module bin/mod_wsgi.so
WSGIScriptAlias /hg "hgwebdir.wsgi"

<Location /hg/>
    AuthName "Mercurial Repositories"
    AuthType VisualSVN
    AuthzVisualSVNAccessFile "C:/Repositories/authz-windows"
    AuthnVisualSVNBasic on
    AuthnVisualSVNIntegrated off
    AuthnVisualSVNUPN Off

    SVNParentPath "C:/Repositories/"

    require valid-user
</Location>

Create a Mercurial repository:

hg init C:\Repositories\hgtest

You should now be able to access /hg through your browser, and manage repository level authorization through the VisualSVN Server tool.

like image 185
h0tw1r3 Avatar answered Oct 05 '22 05:10

h0tw1r3