用hg serve发布Mercurial repository

经常使用Mercurial的repo(比如:xen-unstable.hg),本文就如何搭建一个hg repository吧。
首先,需要建立一个repo,【安装mercurial软件包 自不必说的了】

然后,在repo的目录内,运行hg serve即可发布这个repo。(默认情况下使用TCP8000端口)
$ hg serve

在另外一台机器上,运行如下hg clone命令即可将repo clone下来。

如何支持push? 在server端配置
1. 使用http/web方式push:在server端的repo中修改.hg/hgrc文件。
(或者修改your Web server user's .hgrc file, such as /home/www-data/.hgrc, or a system-wide hgrc file like /etc/mercurial/hgrc)
添加如下配置信息:

(注意:一定需要保证你的repo目录对运行Web Server的用户具有可读可写的权限。hg push 默认使用https方式,需要ssl认证,allow_push是限制那些用户可以push,这里再内网,对这些权限方面的暂时不做限制。)
2. 使用ssh方式push:修改client端的.hg/hgrc文件制定push的
添加如下内容:

(client端hg push之时会让你输入user在vt-repo上ssh登录的密码)

在client端的配置,只需要添加一个用户自己的username即可,在.hg/hgrc文件中添加如下:
[ui]
username = your_name

客户端将repo clone下来,然后修改,然后commit,最后push即可。

这里再添加一个我曾用过的一个脚本,它用来做hg serve的。

参考资料:

master

Stay hungry, stay foolish.

发表评论

邮箱地址不会被公开。 必填项已用*标注

*