科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网服务器频道给你的cvs服务器加上邮件通知

给你的cvs服务器加上邮件通知

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文介绍了给你的cvs服务器加上邮件通知的方法。

2005年7月29日

关键字: CVS 服务器

  • 评论
  • 分享微博
  • 分享邮件
    ZDNetChina服务器站 x86服务器技巧

    为什么要用cvsmail

    当我们开发人员分散各处时,很难了解cvs server上到底更新了什么,而且每天去阅读cvs上大量的更新日志也是一件很麻烦的事情。通过cvsmail,你可以及时准确的通知每个开发人员服务器上的内容发生了什么更新。

    前提

    假设你已熟知CVS服务器设置指南 (http://www.bestunix.net/p/cvs_server_config.php ),并已配置好了自己的CVS服务器

    假设你已经配置好了mail服务器,如果没有配置的话请参考xuki的qmail安装指南 (http://www.xuki.org/linux_qmail.htm)

    如何获得

    其实cvsmail有好几个版本,不过这里我选用的是最简单的那个,安装配置非常容易,而且它已经可以实现我们需要的大部分的功能。http://www.over-yonder.net/~fullermd/projects/cvsmail/ 可以去上面网址下载cvsmail的最新版本。

    安装

    这里的安装分两种,我逐个来说明

    第一种

    如果你有一个原始的CVSROOT模块,那么你可以使用install.pl脚本来进行安装。下面分别按步骤介绍

    1.初始化你的CVS仓库,使用cvs init,如果不明白的话,可以参考 CVS服务器设置指南( http://www.bestunix.net/p/cvs_server_config.php

    2.check out出一个你的CVSROOT模块的拷贝, 我们假设把这个模块放入/tmp/cvs目录,服务器端CVS仓库路径为/home/cvsroot

mkdir /tmp/cvs
cd /tmp/cvs
cvs -d :pserver:sxy@127.0.0.1:/home/cvsroot login
cvs -d :pserver:sxy@127.0.0.1:/home/cvsroot co CVSROOT

    3.进入你下载并解压缩以后的cvsmail目录,运行install.pl脚本,如下

./install.pl /tmp/cvs/CVSROOT

    4.进入/tmp/cvs/CVSROOT目录,根据你的系统设置来编辑cvsmail.cfg文件,主要需要编辑下面几个地方

    $MAILTO 设置为cvs commit时会接收到邮件的用户,注意这里只能设置一个用户,如果需要多个用户接收的话,则需要设置为一个邮件列表

    需要注意的是这里设置的是用户名,实际上接受邮件的是 username@hostname,比如我们设置的用户名是cvsupdate,当前主机名是bestunix.net,那么收件人就是cvsupdate@bestunix.net

    $FROM_HOST 发件人的域名,默认是主机名,一般不用做什么设置,cvs的发件人默认是cvsroot,所以,我们收到的通知邮件一般都是 cvsroot@hostname发送的,比如cvsroot@bestunix.net

    $SENDMAIL 一般保留默认就好了,如果你的邮件服务器是qmail的话,需要改为"/var/qmail/bin/qmail-inject"

    $P_* 这里主要是指定这些应用程序的路径,一般不用修改,如果你不确定的话,可以用whereis来察看一下

    5.修改完上面选项以后,用 cvs commit提交到服务器上,下次cvs commit你就会收到邮件通知了.

    第二种情况,没有一个原始的CVSROOT

    那么,我们需要手工做一些install.pl的工作,我们看看install.pl都做了什么

    1. Copy cvsmail.pm, cvsmail.cfg, cvsmail.pl, precommit.pl到你check out出来的CVSROOT里面,比如/tmp/cvs/CVSROOT

    cp cvsmail* /tmp/cvs/CVSROOT
    cp pre* /tmp/cvs/CVSROOT

    然后把这几个文件都加入CVS仓库

    cvs add cvsmail.pm
    cvs add cvsmail.cfg
    cvs add cvsmail.pl
    cva add precommit.pl

    2. 在CVSROOT/commitinfo这个文件中加入下面行

    ALL     $CVSROOT/CVSROOT/precommit.pl

    3. 在CVSROOT/loginfo这个文件中加入下面行

    ALL     $CVSROOT/CVSROOT/cvsmail.pl %{ sVv }

    4. 修改cvsmail.cfg,同第一种情况  
  
    5. 提交上面修改过的文件

    cvs commit

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章