Вы можете сделать это с помощью клиента командной строки Subversion и некоторых скриптов (Ruby или Python), но не ждите, что люди здесь напишут код для вас. Детали реализации будут зависеть от того, как часто вы хотите запускать статистику и насколько велик ваш репо.
При обработке данных из клиента командной строки Subversion вам может оказаться проще использовать параметр --xml (принятый командами "log" и "info"), который выводит данные в формате XML.
1. search across all commit messages ?
Запустите «svn log -v --xml» и запустите текстовый поиск по полученному XML (или его части). Вы можете указать, какой набор сообщений коммита вы хотите искать.
2. monitor the commits on certain important files ?
Это реализовано с помощью триггеров фиксации. См. Документацию сервера Subversion.
3. identify files that are never/rarely used ?
4. identify files that are most frequently changed ?
5. identify files that most developers have accessed ?
6. identify files that have been committed together many number of times ?
Все это может быть реализовано с использованием вывода из "svn log --xml" и последующей обработки полученных XML-данных.