То, что вы на самом деле хотите, это не способ изменить ваши коммиты, а что-то вроде svn: Keywords . К сожалению, как вы можете прочитать в окне "Где $ GlobalRev $?" это на самом деле не делает то, что вы хотите. Вместо этого вам придется написать скрипт для вызова и анализа выходных данных svnversion и каким-то образом поместить результат в ваши файлы как часть сборки.
Теперь, чтобы ответить на ваш буквальный вопрос, все еще интересно подумать о том, что вы можете и не можете делать в скриптах svn hook:
Вы не можете изменить коммит из ловушки после фиксации
К моменту запуска ловушки после фиксации, фиксация уже завершена (как следует из названия), поэтому об изменении файлов не может быть и речи. Вы можете только проверить изменения в этой точке.
Вы также не можете изменять ожидающие коммиты из ловушки перед фиксацией
Вы можете просмотреть содержимое ожидающей транзакции из ловушки перед фиксацией, используя инструмент svnlook с переключателем --transaction, но вы не можете его изменить.
Если произвольные изменения могут быть внесены в ловушку перед фиксацией, то, очевидно, сервер должен будет сообщить об этих изменениях клиенту svn. В противном случае клиент будет считать, что его файлы находятся на подтвержденной ревизии, хотя на самом деле они разные. Если svn-клиент примет такие сообщенные изменения, это приведет к тому, что ваша работа будет стерта коммитом . Это было бы удивительно, мягко говоря, для системы контроля версий. Излишне говорить, что Subversion не позволяет этого.