萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> PHP運行SVN命令顯示某用戶的文件更新記錄代碼

PHP運行SVN命令顯示某用戶的文件更新記錄代碼

 使用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 "沒有文件"; } ?>    
copyright © 萬盛學電腦網 all rights reserved