Я использую следующий скрипт (оболочка bash в linux) для вычисления текущих строк кода, изменяемых локально, по сравнению с самой последней версией:
insert=`svn diff -x -b | grep "^+" | grep -v -c "^+++"`
delete=`svn diff -x -b | grep "^-" | grep -v -c "^---"`
loc=`expr $insert + $delete`
echo "$loc lines diff (Inserted $insert, deleted $delete)."
Это дает вам вывод как это:
106 lines diff (Inserted 65, deleted 41).
Чтобы проверить строки изменений кода предыдущей версии, вы можете просто использовать аргумент -r
. Следующий скрипт принимает один аргумент в качестве интересующей версии:
ver=$1
nextVer=`expr $ver + 1`
insert=`svn diff -r$ver:$nextVer -x -b | grep "^+" | grep -v -c "^+++"`
delete=`svn diff -r$ver:$nextVer -x -b | grep "^-" | grep -v -c "^---"`
loc=`expr $insert + $delete`
echo "$loc lines diff (Inserted $insert, deleted $delete)."