一、将如下内容拷贝入脚本StatisticsEntrance.sh
#!/bin/bash
echo "get cuurnt path"
basePath=$(cd $(dirname $0);pwd)
echo $basePath
# define variables
# 统计起始时间
BEGIN_TIME=$1
# 统计截止时间
END_TIME=$2
# 统计分析的SVN路径
SVN_URL=$3
# 定义统计文件类型 如:**/*.java:**/*.jsp:**/*.js:**/*.css:**/*.xml:**/*.sql:**/*.sh
INCLUDE_TYPE=$4
# 定义不包括的文件 如:**/js/jquery-1.6.2.min.js
EXCLUDE_FILE=$5
# 删除旧数据
cd $basePath
rm -rf StatisticsContents report
# 初始化过程报告归集目录
mkdir -p $basePath/processReports
# 定义记录日志函数
function logger(){
printf "%s\n" "$*" > $basePath/Statistics.log
}
# 生成需要分析SVN临时路径
svn co --depth=empty $SVN_URL StatisticsContents
# 导出日志文件
cd $basePath/StatisticsContents
svn log -v --xml -r {$END_TIME}:{$BEGIN_TIME} > $basePath/StatisticsContents/svn.log
# 分析生成报告
java -jar $basePath/statsvn.jar $basePath/StatisticsContents/svn.log $basePath/StatisticsContents \
-include $INCLUDE_TYPE \
-exclude $EXCLUDE_FILE \
-charset UTF-8 \
-output-dir $basePath/report
# 记录日志
logger "Run by user " $(id -un) "at " $(/bin/date)
# 压缩备份报告
zip -q -j -r $basePath/processReports/report-$(date "+%Y%m%d%H%M").zip $basePath/report
echo "Statistics time [$BEGIN_TIME $END_TIME)"
echo "Statistics URL $SVN_URL"
echo "SHOW DATA ENTRANCE:$basePath/report/index.html"
if [ $? -eq 0 ]; then
echo "successed."
else
echo "failed , please check this script ."
exit 1
fi
二、将statsvn.jar与StatisticsEntrance.sh归档到svn的同一个目录下
三、创建Jenkins工程及相关配置
1、参数配置
2、配置源代码
3、配置执行脚本进行数据统计
4、配置报告展示
四、构建并查看结果
1、构建操作及查看连接
2、结果展示页面效果