获取SVN作者的电子邮件地址

时间:2011-07-25 16:53:08

标签: svn

是否有类似命令可以从SVN中获取作者(提交者)电子邮件(使用h命令行SVN)?或者我们可以将每个用户名设置为电子邮件,并通过连接脚本从作者那里获取电子邮件吗?

2 个答案:

答案 0 :(得分:10)

SVN(与Git不同)并不关心作者的电子邮件ID。只有作者姓名,通常是用户名。在大多数组织中,您必须能够通过将@domain.com附加到用户名来获取电子邮件。

答案 1 :(得分:1)

在文件commit-email.pl中 后     我的$ mail_from = $ author; 我添加了

my @authoremail = &read_from_process('php', '-f', '/usr/bin/svnemail.php', '/var/lib/submin', $author);
$mail_from = shift @authoremail;

脚本/usr/bin/svnemail.php的内容:

<?php
if (isset($argv[1])) {$fpath1=$argv[1];} else die("dummy@dummy.dummy\n");
if (isset($argv[2])) {$usrnm=$argv[2];} else die("dummy@dummy.dummy\n");
$file = fopen($fpath1."/userproperties.conf", "r");
$loginfound=false;
$emailnotfound=true;
while ((!feof($file)) and ($emailnotfound)){
        $line = fgets($file);
    if ($loginfound) {
                if (substr($line,0,1)=="[") {
                        die ("dummy@dummy.dummy\n");
                }
                if (substr($line,0,8)=="email = ") {
                        echo substr($line,8);
                        $emailnotfound=false;
                }
        }
    if (substr($line,0,strlen($argv[2])+2)=="[".$argv[2]."]") {
                $loginfound=true;
        }
}
if ($emailnotfound) {
echo "dummy@dummy.dummy\n";
}
fclose($file);
?>

我不是程序员,所以请不要因为这个代码而惩罚我。感谢。