CentOS VPS安装Mercurial手记

说到版本控制系统,这里不得不提到一下以往著名的版本控制系统:CVS和SVN,它们都是集中式的单服务器的版本控制系统,而相比之下Mercurial是属于分布式版本控制系统的,和它类似的,还有大名鼎鼎的Git。

下面是摘自Mercurial官网的介绍,或许可以让你更明白分布式版本控制系统的优点

Mercurial 是一种轻量级分布式版本控制系统,采用 Python 语言实现,易于学习和使用,扩展性强。其是基于 GNU General Public License (GPL) 授权的开源项目。相对于传统的版本控制,具有如下优点:

  • 更轻松的管理。传统的版本控制系统使用集中式的 repository,一些和 repository相关的管理就只能由管理员一个人进行。由于采用了分布式的模型,Mercurial 中就没有这样的困扰,每个用户管理自己的 repository,管理员只需协调同步这些repository。
  • 更健壮的系统。分布式系统比集中式的单服务器系统更健壮,单服务器系统一旦服务器出现问题整个系统就不能运行了,分布式系统通常不会因为一两个节点而受到影响。
  • 对网络的依赖性更低。由于同步可以放在任意时刻进行,Mercurial 甚至可以离线进行管理,只需在有网络连接时同步。

其实早就想折腾折腾Mercurial了,只是由于最近工作比较忙,一直没抽出时间来。周末花了些时间来在我的VPS上安装Mercurial。

我的VPS,系统是CentOS,这里大致介绍一下在CentOS中安装Mercurial的一般过程:

由于Mercurial是由Python开发的,所以安装和运行,都少不了Python的支持。其实现在的Linux系统,基本都内置安装了Python,只是你需要确认一下你的Python的版本,必须在2.4以上。并且,安装的时候,还需要编译Python的header files,所以,在CentOS中,还需要安装python-devel包,即使用命令: yum insall python-devel

Mercurial的官方下载地址:http://mercurial.selenic.com/release/ 目前,最新版本为1.8.4

安装过程如下:

#下载安装包后,解压,进入Mercurial安装包目录
make all
make install
hg debuginstall

安装后,可能会提示如下错误:

此时再运行 hg debuginstall ,会出现

Checking username…

no username supplied (see “hg help config”)

(specify a username in your .hgrc file)

1 problems detected, please check your install!

不用担心,这是因为配置文件问题,你需要配置默认的配置文件.hgrc

安装包中自带了一个sample.hgrc,可以参考它的格式,在相应目录下,建立.hgrc文件,并把其中的用户名和邮箱地址,填为你自己的信息即可。保存后,再次运行hg debuginstall命令,检查是否安装成功。成功后,会显示如下类似信息:

Checking encoding (UTF-8)…

Checking extensions…

Checking templates…

Checking patch…

patching file hg-debuginstall-wCOuEs

Checking commit editor…

Checking username…

No problems detected

OK! 安装成功,可以运行hg命令,开始你的Mercurial之旅了!

后面的文章,我会大致介绍hg的使用方法……

支持原创技术分享,据说打赏我的人,都找到了女朋友!