I am trying to get the number of lines in each revision of a particular file in the subversion repository. I know svn log filename.txt
returns the number of lines changed for each version. I want the actual number of lines.
问问题
87 次
2 回答
1
svn diff -c myrev
myrev
输出修订引入的差异。这是您可以在不应用启发式方法的情况下从机器获得的最大信息。
如果您需要添加的行数,请使用|egrep '^\+'|wc -l
等对输出进行后期处理。
statsvn是一个用 Java 编写的 SVN 历史分析软件,您可以从中获得灵感(或作为测试时的参考)。
于 2013-03-13T10:15:28.183 回答
0
您可以使用以下功能:
function revLineStats() { # <file or url>
local file=${1}
for rev in $(svn log "${file}" |awk '/^r[[:digit:]]+ \|/{print substr($1,2);}'|sort -g)
do
printf "%5i : %5i\n" ${rev} $(svn cat -r ${rev} "${file}" |wc -l)
done
}
于 2013-03-13T10:09:53.847 回答