Перемещение дублирующихся структур каталогов друг на друга - PullRequest
0 голосов
/ 13 июня 2010

У меня есть двойные структуры каталогов в двух местах, которые мне нужно объединить в репозитории svn. Под «объединением» я подразумеваю, что я хочу, чтобы все файлы и папки, уникальные для структуры b, были перемещены в структуру a. Когда я пытаюсь сделать это, используя svn move, я получаю ошибку

svn: Path 'com' already exists

Папки выглядят так:

src
 -> com
    -> (many more files and directories)
 -> java
    -> com
       -> (some files and folders, some folders overlap but all files are unique)

src\com равно a, а src\java\com равно b.

Ответы [ 2 ]

0 голосов
/ 31 декабря 2010

После общения с несколькими людьми я пришел к выводу, что svn не поддерживает такое поведение.

Можно получить те же результаты, написав скрипт, который читает содержимое java \ com и выдает команду svn move для каждого элемента. Если на многих уровнях есть перекрывающиеся файлы и каталоги, это не сработает. Перекрытия каталогов могут быть обработаны путем расширения скрипта для сканирования иерархии каталогов, маркировки перекрытий и перемещения их содержимого, как указано выше. Перекрытия файлов должны обрабатываться вручную, и ни один скрипт не сможет решить, какой файл сохранить во всех случаях.

0 голосов
/ 14 июня 2010

Вы можете svn объединить всю историю исходного пути 'com' с целевым путем, который сохранит историю этих файлов, например,

svn merge -r 1:HEAD svn://repository-path-to/com working-copy-path-to/com

Вы должны убедиться, что диапазон ревизий включаетревизия, которая добавляет первые файлы в исходную папку 'com'.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...