我正在尝试获取subversion存储库中特定文件的每个修订版中的行数。我知道svn log filename.txt
会返回每个版本更改的行数。我想要实际的行数。
答案 0 :(得分:1)
svn diff -c myrev
输出myrev
修订引入的差异。这是您可以在不应用启发式的情况下从机器获得的最大信息。
如果您需要添加的行数,请使用|egrep '^\+'|wc -l
等后处理输出
statsvn是一个用Java编写的SVN历史分析软件,您可以将其用作灵感(或在测试时作为参考)。
答案 1 :(得分: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
}