日期:2014-05-16  浏览次数:20873 次

apache搭建Mercurial(HG)版本控制服务及权限控制
    最近工作需要,建立一个本地版本控制服务,用来共享代码。搭建简单的SVN服务可以使用VisualSVN,但Mercurial有没有类似的工具呢?
    按照网上的这两篇文章,配置成功了,记录下来!!希望对需要的人有用的上!

在Windows使用apache搭建Mercurial版本控制服务
http://fatkun.com/2010/08/mercurial-server-with-apache.html

Mercurial(HG)版本控制服务用户名验证
http://fatkun.com/2010/10/mercurial-authentication.html

这里我在配置的时候,有一点点小插曲,在此做以说明:
1、环境说明:
     windows Server Enterprise 2008  32 位;
     HG   ver 2.2.2    32     位;
     tortoisehg-2.4.1-hg-2.2.2-x86;
     python-2.7.3;
     xampplite-win32-1.7.3;
2、配置文件按照上述两篇文章的做法,限制不了,最后我做了修改,需注意的地方:
     在httpd.conf配置最末尾加入,注意路径改为你的,我的配置如下:
<Location /hg>
    AuthType Basic
    AuthName "Mercurial repositories"
    AuthUserFile "D:/JAVASoftTool/xampplite/apache/conf/hguser"
    Require valid-user
</Location>


在hgweb.config中是做得如下配置,控制了库里的所有项目为不可见:

[collections]
D:/JAVASoftTool/HGRepositories = D:/JAVASoftTool/HGRepositories
 
[web]
allow_push = false
allow_pull = false
allow_read = false
push_ssl = false
style = gitweb


具体每一个项目进行控制的配置文件hgrc文件的内容如下:
[web]
allow_pull = dhb,.......
allow_push = dhb,.......
allow_read = dhb,.......


按照以上的方法进行配置,就可以大功告成了!!