PHP运行SVN命令显示某用户的文件更新记录的代码

 更新时间:2014年01月03日 15:54:32   作者:  
使用SVN开发者们平时开发或代码上线过程中需要知道某个时间段内修改或添加过那些文件,所以用PHP写了个小程序,直接在浏览器中调用即可

复制代码 代码如下:

<?php
$user=trim($_GET['user']);
$d=$_GET['date'];
if(!$d){
 $d=date('Ymd',time()-86400*14);
}
if(empty($user)){
 echo "例如:svn_log.php?user=wang&date=20130118";
 exit;
}

$cmd='/usr/bin/svn log -v -r {'.$d.'}:"HEAD" --username 用户名 --password 密码 --no-auth-cache | sed -n "/'.$user.'/,/-----$/ p" 2>&1';

$p=dirname(__FILE__);

exec('cd '.$p,$output);

exec($cmd,$output);

$d=date('Y年m月d日',strtotime($d));
echo $user.'自'.$d.'以来:<br>';
echo '---------------------------------------------<br>';
$out='';

krsort($output);

if(!empty($output)){
 foreach($output as $v){
  $p1=strpos($v,'/branch/');
  $p2=strpos($v,'/tg/');
  if($p1!==false || $p2!==false){
   if($p1!==false){
    $v=substr($v,$p1+9);
   }else{
    $v=substr($v,$p2+4);
   }
   if($out==''){
    $out=$v;
    echo $v.'<br>';
   }else{
    if(strpos($out,$v)===false){
     $out.=','.$v;
     echo $v.'<br>';
    }
   }
  }
 }
}else{
 echo "没有文件";
}
?>

相关文章

  • Yii学习总结之安装配置

    Yii学习总结之安装配置

    本文是Yii学习总结系列文章的第一篇,主要给大家介绍下YII的简单介绍及安装和配置,有需要的小伙伴参考下吧。
    2015-02-02
  • php创建无限级树型菜单

    php创建无限级树型菜单

    这篇文章主要介绍了php创建无限级树型菜单 ,主要使用的是递归函数,感兴趣的小伙伴们可以参考一下
    2015-11-11
  • JS操作XML中DTD介绍及使用方法分析

    JS操作XML中DTD介绍及使用方法分析

    这篇文章主要介绍了JS操作XML中DTD介绍及使用方法,结合实例形式分析了DTD概念、原理及校验xml文档的相关操作技巧,需要的朋友可以参考下
    2019-07-07
  • php压缩和解压缩字符串的方法

    php压缩和解压缩字符串的方法

    这篇文章主要介绍了php压缩和解压缩字符串的方法,涉及php中gzcompress与gzuncompress的使用技巧,需要的朋友可以参考下
    2015-03-03
  • PHP编程之设置apache虚拟目录

    PHP编程之设置apache虚拟目录

    这篇文章主要为大家详细介绍了设置apache虚拟目录的方法,步骤很简单,希望对大家有用,感兴趣的小伙伴们可以参考一下
    2016-07-07
  • PHP下常用正则表达式整理

    PHP下常用正则表达式整理

    PHP下常用正则表达式整理,使用php的朋友能用得到。
    2010-10-10
  • PHP中函数rand和mt_rand的区别比较

    PHP中函数rand和mt_rand的区别比较

    mt_rand() 比rand() 快四倍,很多老的 libc 的随机数发生器具有一些不确定和未知的特性而且很慢。PHP 的 rand() 函数默认使用 libc 随机数发生器。mt_rand() 函数是非正式用来替换它的。
    2012-12-12
  • php+ajax实现无刷新的新闻留言系统

    php+ajax实现无刷新的新闻留言系统

    这篇文章主要介绍了一款基于php+ajax无刷新的新闻留言系统实现过程,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2015-10-10
  • 如何用php生成扭曲及旋转的验证码图片

    如何用php生成扭曲及旋转的验证码图片

    本篇文章是对利用php生成扭曲及旋转的验证码图片进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • PHP中的日期处理方法集锦

    PHP中的日期处理方法集锦

    在Unix中,时间的表示方式为计算从1970年1月1日零时起所过去的秒数,这称为UNIX 时间戳
    2007-01-01

最新评论