2012-05-01 4 views
0

В tortoise svn, есть 3 текстовых файла в папке с именем abc. , когда я переименовал папку из abc в xyz и просмотрел журнал показа, показывает, что только xyz скопирован из abc и удалена папка abc. файлы внутри xyz копируются, но не отображаются в журнале.Переименование папок в svn,

как я могу просмотреть файлы, когда я переименовать папку в SVN

+0

Итак, вы запрашиваете полный набор содержимого abc в «файлах, которые изменили» представление для ревизии при переименовании abc в xyz? Или что-то другое? Зачем вам это нужно - чтобы вы могли grep для истории? – Rup

+0

да, я хочу просмотреть файлы внутри переименованной папки xyz в svn log in tortoise svn. –

+0

Тогда я не думаю, что это возможно: svn записывает только папку, переименовавшуюся в ревизии. – Rup

ответ

1

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

Что бы вы хотели сделать? Предположим, Subversion сообщила обо всех изменениях в переименованной папке. Как это вам поможет? Я могу себе представить несколько обстоятельств, когда это не очень хорошая идея:

  • Представьте ситуацию, когда я начал использовать Maven. В Maven мои исходные файлы должны находиться под папкой src/main/java. Как и большинство разработчиков, я поместил исходный код Java прямо под корень репозитория под номером source. Теперь мне нужно переместить файлы в этом каталоге на src/main/java, который может представлять сотни исходных файлов Java. Теперь вместо моего журнала было отображено только три файла, сотни будут перечислены.

  • Предположим, вы изменили несколько файлов при переименовании каталога. Как узнать разницу в том, что файл был указан, поскольку какой-либо родительский каталог был изменен в сравнении с файлом, который был фактически изменен. Люди уже жалуются, что в журнале отображаются файлы, в которых какое-либо свойство было изменено, но не сам файл (что может вызвать проблемы при слиянии и обновить свойство svn:mergeinfo). Теперь каждая переименованная папка будет каскадировать весь репозиторий. Иногда создается тег, но имя было сделано не совсем правильно (REL-1.2 vs. rel-1.2.0), поэтому люди иногда переименовывают тег. Теперь все файлы в этом теге будут отображаться как измененные в журнале?

Это не так сложно сделать, что вы хотите в Python или Perl. Просто сделайте svn log, а затем, когда увидите, что каталог переименован в определенную версию, сделайте svn ls --recurse в этой папке и получите все файлы в нем.

Смежные вопросы