Команда svn blame
дает вам автора и ревизию для последнего изменения для каждой строки, и вы можете использовать опцию -r #
для просмотра той же информации в более ранней ревизии.Таким образом, чтобы получить полную историю, вы должны выполнить цикл:
svn blame -r HEAD
, чтобы получить самые последние изменения. - Проверьте строку, которая вас интересует, чтобы убедиться, что она присутствует..
- Разобрать номера ревизий (все в файле или просто в диапазоне интересующих вас строк) и найти самую большую.
- Вернуться к 1, используя самую большую ревизию - 1вместо
HEAD
.
У вас будут проблемы с отслеживанием линии между изменениями, в целом.Я написал несколько инструментов, которые помогают с каждым шагом, но когда мне нужно было сделать что-то подобное, мне приходилось делать это вручную, просматривая вывод svn blame на каждом этапе, чтобы увидеть, как код меняется в каждом из них.пересмотр.