Можно ли просмотреть историю строки в SVN?[дубликат]
-
03-07-2019 - |
Вопрос
Возможный Дубликат:
История изменений в конкретной строке кода в Subversion?
Используя SVN и / или Tortoise SVN (или любой другой инструмент SVN, на самом деле), возможно ли просмотреть историю для определенной строки файла?
Недавно у меня было несколько случаев, когда я натыкался на строку в файле и хотел найти запись журнала, связанную с ее созданием (либо чтобы определить, сколько лет этой строке кода, либо чтобы получить более широкий контекст для того, почему она была добавлена).
Прямо сейчас я делаю это вручную.Я могу отобразить журнал для файла, вернуться немного назад и посмотреть, присутствует ли рассматриваемая строка.Если это так, я возвращаюсь еще дальше.Если это не так, я пойду посмотрю на более свежую редакцию.Повторяйте до тех пор, пока не будет найдена редакция, в которую было внесено изменение.
Излишне говорить, что этот процесс в лучшем случае неудобен, особенно для особенно старых файлов.Кто-нибудь знает об автоматизированном методе достижения этого?
Решение
svn blame
Другие советы
Я не уверен, что одна только вина делает то, что нужно спрашивающему.
Я обнаружил, что команда TortoiseSVN "виноваты изменения" очень удобна.Он выполняет проверку двух ревизий и сравнивает их вместе в инструменте diff.
В результате вы узнаете, какова строка в данный момент, какой она была в целевой редакции и кто ее модифицировал.Это работает лучше всего, когда вы выбираете две последовательные редакции.
Вы можете получить доступ к этому, используя "Показать журнал", щелкнув правой кнопкой мыши по файлу в нижней панели и выбрав "виноваты изменения".
Кроме того, для тех, кому не нравится термин "винить", вы можете запустить "svn praise", который дает те же результаты.:)
Более конкретно, вы можете использовать "svn blame" с некоторыми аргументами, чтобы посмотреть на конкретные ревизии.Это может быть большой размер для каждого файла... svn blame -r REV#
повторение нескольких ревизий (если вы работаете из командной строки) - это быстрый скрипт.
Используйте опцию контекстного меню TortoiseSVN Blame - у нее действительно хороший интерфейс для изучения истории отдельных строк.
Я предпочитаю использовать svn annotate
закончился svn blame
.Я хотел бы, чтобы другие поступали так же.:-(