Как переместить все URL в svn:externals свойствах через репозиторий?

ОК, получилось.

Оказывается, мне нужно было позволить OpenCV начать обработку событий, это не обработка события WM_PAINT. Добавление cv2.waitKey () исправлено это.

15
задан Steffen Opel 3 November 2009 в 14:03
поделиться

3 ответа

Поскольку Вы указали, что все еще хотите смочь проверить более старые изменения, единственное решение состоит в том, чтобы действительно "переписать" всю историю (решение D упомянуло ранее).

, Чтобы сделать это, Вы должны:

1) Дамп содержание цельный репозиторий с помощью дамп svnadmin :

$ svnadmin dump /path/to/repos > original-dumpfile
* Dumped revision 0.
* Dumped revision 1.
* Dumped revision 2.
* Dumped revision 3.

2) Редактирование файл дампа, для изменения svn:externals URL. Это - самая трудная часть : Принятие репозитория содержит двоичные данные также, открытие файла дампа в редакторе простого текста, скорее всего, повредит файл дампа. У меня были хорошие события с помощью так называемого "Hex-редактора", например, Бесплатно распространяемый Hex-редактор XVI32

3) Создают новый репозиторий и загружают измененный dumpfile в него:

$ svnadmin create newrepos
$ svnadmin load newrepos < modified-dumpfile

Для получения дополнительной информации, Вы могли бы также интересоваться этой ссылкой:
http://svnbook.red-bean.com/en/1.1/ch05s03.html

ПРИМЕЧАНИЕ: Подверсия 1,5 на самом деле добавленной поддержки относительные URL в svn:externals свойстве, которое может точно предотвратить подобные проблемы в будущем:
http://subversion.tigris.org/svn_1.5_releasenotes.html#externals

8
ответ дан 1 December 2019 в 02:20
поделиться

Вы могли:

a) проверяют старый пересмотр и изменяют Ваш файл hosts для указания на старое название к новому адресу, затем svn обновление. В случае, если путь URL также изменился... хорошо затем, Вы могли бы также:

b) занимают время для записи сценария, которые находят свойства в токе (старый пересмотр-) работающий копия, и изменяет URL там, не фиксируя их. ИЛИ:

c) обращают внимание на пересмотр (-s), где Вы зарегистрировались в новых значениях свойств, проверьте старую версию и просто сделайте слияние те изменения (-которые только влияют на свойства) в Вашу рабочую копию.

d) или, возможно, использование svndump для дампа данных репозитория, строковая замена URL в дампе, затем восстанавливает его.. Я не дал бы Вам гарантии, что это даже работает ;-)

0
ответ дан 1 December 2019 в 02:20
поделиться

Я бы использовал для этого SvnDumpTool . В нем есть именно то, что вы ищете:

svndumptool transform-prop svn:externals "(\S*) (|-r ?\d* ?)http://oldserver.net(/\S*)" "\2\3 \1" source.dumpfile source-fixed-externals.dumpfile

Это исправляет все внешние по отношению к формату subversion 1.5 и использует относительные URL-адреса.

Таким образом, svn: externals, такие как:

external/libraryA svn://oldserver.net/repo/libraryA

, становятся:

 /repo/libraryA external/libraryA

с использованием относительных URL-адресов корневого сервера.

19
ответ дан 1 December 2019 в 02:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: