shell输出svn日志到指定文件

问题描述

由于项目很老,没有使用 Maven 构建,每次项目上线发布增量包的时候是使用 Ant Build 的,这里就需要一个文件清单,之前用 Windows 的时候,使用小乌龟可以很快捷的拷贝出所需的清单,换用 Mac 之后暂时还没找到好用的 svn 版本控制软件,只能从 IDE 中查找 svn 提交历史或是从终端查找,及其不方便,所以花了点时间从菜鸟教程上学了点 shell 脚本命令,基本实现了自己所需要的功能,下面是脚本。

shell 脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
exec 7>SVNLog.txt
echo "查看 svn 版本信息";

if [ -n "$2" ]; then
echo "首版本为:"$1"" ;
echo "末版本为:"$2"" ;
svn log -r $1:$2 -v >&7;
echo "svn log 已输出到 SVNLog 中" ;
elif [ -n "$1" ]; then
echo "首版本为:"$1"" ;
echo "末版本为:"$1"" ;
svn log -r $1:$1 -v >&7;
echo "svn log 已输出到 SVNLog 中" ;
else
echo "请输入查询所需版本号";
fi

结果

  • 首先运行./test.sh 38243 38258,其中后两个参数为查询所需版本号,也可只输入一个参数即为查询该版本日志。
  • 然后从目录下找到 SVNLog.txt,复制所需日志信息即可。
  • 本人感觉这种解决办法和之前在终端查找日志的方式差不多,但是有时候会忘记那个查找日志的命令还需要查一下,写成脚本即方便许多。
坚持原创技术分享,您的支持将鼓励我继续创作!