#svn #formatting #changelog
#svn #форматирование #Журнал изменений
Вопрос:
Я создавал журналы изменений в subversion с помощью svn log
команды. Чтобы упростить чтение, я хотел бы добавить новую строку после комментариев каждой редакции. Если вывод изначально выглядит следующим образом:
------------------------------------------------------------------------
Revision 1
------------------------------------------------------------------------
Revision 2
------------------------------------------------------------------------
Я бы хотел, чтобы это выглядело так:
------------------------------------------------------------------------
Revision 1
------------------------------------------------------------------------
Revision 2
------------------------------------------------------------------------
Я попытался использовать следующую команду в пакетном режиме:
FOR /L %%i IN (starting_revision, 1, ending_revision) DO (
svn log branch_name -r %%i --incremental >> output.txt
echo. >> output.txt
echo. >> output.txt
)
Изначально казалось, что это сработало, но поскольку в ветку, над которой я работаю, были внесены не все изменения, в результате в некоторых частях текстового файла были напечатаны дополнительные новые строки. Кто-нибудь знает, как я мог бы избежать этой проблемы?
Ответ №1:
Вы можете использовать --xml
опцию в svn log
командной строке. Анализ выходных данных xml позволит вам отформатировать их любым удобным для вас способом.
Ответ №2:
Если вам нужен журнал с одной строкой, вы можете использовать
svn log | perl -l40pe 's/^- /n/'
Мне нужен журнал с одной строкой, поэтому я использовал приведенную выше команду.
Комментарии:
1. Это такой отличный ответ! Конвейерный вывод дает вам так много вариантов. Спасибо