Получение текстовой сводки изменений за несколько проверок из хранилища Subversion - PullRequest
0 голосов
/ 06 мая 2011

Позвольте мне предвосхитить это, сказав, что я довольно новичок в управлении исходным кодом, поэтому я могу здесь ужасно неправильно использовать некоторые термины.

Я пытаюсь получить текстовую разницу в результатах общего результата нескольких проверок,Так, например, для checkin-ов «Checkin1» и «Checkin2» я хотел бы видеть что-то вроде:

file: \ foo.txt удалена строка 75

строка 64, "до свидания" заменено на "привет"

file: \ bar.txt удалены строки 30-50

Я очень гибок в отношении формата - это действительно просто должно бытьпонятен человеку, и это должен быть один большой непрерывный фрагмент текста, а не интерактивный интерфейс (он входит в документ Word).Мне нужно иметь возможность игнорировать изменения пробелов, так как они не имеют отношения к моему выводу.

Я использую TortoiseSVN, а то, что я ищу, выглядит лот как TortoiseSVN "showизменяется как единая разница ".Однако этот унифицированный diff, к сожалению, не игнорирует изменения пробелов, поэтому я получаю гигантские diff.

1 Ответ

0 голосов
/ 06 мая 2011

Есть пара команд командной строки Subversion, которые могут вам пригодиться:

svn log -v

В этом списке будут перечислены команды, а в первой строке будут перечислены D и A при добавлении или удалении файлов из хранилища.

Для файлов, которые были изменены, вы можете использовать эту команду:

svn diff -r($rev-1):$rev $fileName

И это перечислит изменения в стандартном формате diff. Это даст вам номера строк и изменения в этих строках.

Нет уже созданных инструментов, которые будут форматировать вещи так, как вы хотите, но должна быть возможность создать скрипт на Perl или Python за несколько часов.

Это кажется необычным запросом. Разработчики могут легко понять вывод diff-файлов и журналов, так что это не для разработчиков. Тем не менее, те, кто не являются разработчиками, не поймут Удалить файл 'qualityServiceBeanSkel.java и Изменен «float morphObjectScan» на «double morphObjectScan» .

...