svn log | tr -d '\n' | sed -r 's/-{2,}/\n/g' | sed -r 's/ \([^\)]+\)//g' | sed -r 's/^r//' | sed -r "s/[0-9]+ lines?//g" | sort -g


Команда svn log выводит журнал статуса SVN, содержащий информацию о коммитах в репозитории. Команда tr -d '\n' удаляет символы новой строки из вывода команды svn log. Затем команда sed -r 's/-{2,}/\n/g' заменяет последовательности дефисов на символ новой строки, разделяя каждую запись коммита. Команда sed -r 's/ \([^\)]+\)//g' удаляет информацию о пути файла, оставляя только информацию о коммите. Далее команда sed -r 's/^r//' удаляет префикс «r» перед номером ревизии. Команда sed -r "s/[0-9]+ lines?//g" удаляет информацию о количестве измененных строк. Наконец, команда sort -g сортирует вывод в порядке возрастания номеров ревизий. Эта команда полезна, если вам нужно получить журнал статуса SVN в формате CSV, чтобы обработать его дальше или импортировать в другую систему. Альтернативой может быть использование инструментов, поддерживающих экспорт журнала статуса SVN в CSV формат, например, TortoiseSVN. Передаваемые команде аргументы отсутствуют.

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *