Поиск:

Ответ в темуСоздание новой темы Создание опроса
> SVN: Как перенести папку в другой репозиторий, с сохранением changelog-a? 
:(
    Опции темы
Bose
Дата 14.3.2008, 18:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1458
Регистрация: 5.3.2005
Где: Riga, Latvia

Репутация: 3
Всего: 51



У меня вопрос по SVN. 
Как перенести папку из одного репозитория в другой с сохранением истории изменений? Что-то я никак не могу найти информации по этом вопросу. И возможно ли такое вообще?

п.с. Для работы с репозиторием использую TortoiseSVN.
PM MAIL WWW Skype   Вверх
Daevaorn
Дата 14.3.2008, 18:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2155
Регистрация: 29.11.2004
Где: Москва

Репутация: 1
Всего: 70



скорей всего это невозможно. у каждого репозитория своя история изменений и что делать, если скопировать данные из одно в другой?
PM MAIL WWW   Вверх
JackYF
Дата 14.3.2008, 18:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: нет
Всего: 162



Наваяй скрипт, который вытаскивает ревизии с 1 до HEAD, лог к ревизии и коммитит в другой репозиторий.
Это если очень надо.


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
Bose
Дата 14.3.2008, 19:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1458
Регистрация: 5.3.2005
Где: Riga, Latvia

Репутация: 3
Всего: 51



Цитата(JackYF @  14.3.2008,  18:41 Найти цитируемый пост)
Наваяй скрипт, который вытаскивает ревизии с 1 до HEAD, лог к ревизии и коммитит в другой репозиторий.

идея! но мне не настолько надо.  =)

Желательно было бы штатными средствами.
PM MAIL WWW Skype   Вверх
smartov
Дата 14.3.2008, 20:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


свой собственный
****


Профиль
Группа: Экс. модератор
Сообщений: 4225
Регистрация: 2.2.2006
Где: NJ

Репутация: нет
Всего: 259



Возможно удастся как-то наколдовать с помощью svn merge, но я не уверен. Надо пробовать
Если с помощью него не удастся, то или скрипт или никак
PM MAIL   Вверх
maxim1000
Дата 14.3.2008, 20:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев

Репутация: 3
Всего: 110



Цитата(JackYF @  14.3.2008,  18:41 Найти цитируемый пост)
Наваяй скрипт, который вытаскивает ревизии с 1 до HEAD, лог к ревизии и коммитит в другой репозиторий.

если я не ошибаюсь, отдельного скрипта для этого не нужно: можно воспользоваться "svnadmin dump" и "svnadmin load"
однако, здесь есть ещё одна проблема: всё, что было в корне второго репозитория, попадёт в корень первого, т.е. возможны наложения, так что, наверное, стоит корень второго репозитория перемещать в поддиректорию первого, для этого перед использованием "svnadmin load" нужно позаменять пути (там формат текстовый (ну или почти текстовый - не знаю, как там с бинарниками), так что можно использовать find and replace

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

Это сообщение отредактировал(а) maxim1000 - 14.3.2008, 20:55


--------------------
qqq
PM WWW   Вверх
Bose
Дата 14.3.2008, 21:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1458
Регистрация: 5.3.2005
Где: Riga, Latvia

Репутация: 3
Всего: 51



Цитата(maxim1000 @  14.3.2008,  20:54 Найти цитируемый пост)
если я не ошибаюсь, отдельного скрипта для этого не нужно: можно воспользоваться "svnadmin dump" и "svnadmin load"

Цитата(maxim1000 @  14.3.2008,  20:54 Найти цитируемый пост)
сам такого не пробовал, так что мог чего-то не учесть, но вроде выглядит работающе...


Спасибо за идеи.  Пока что это звучит слишком грозно для меня. 
PM MAIL WWW Skype   Вверх
JackYF
Дата 14.3.2008, 21:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: нет
Всего: 162



Цитата(Bose @  14.3.2008,  18:46 Найти цитируемый пост)
Желательно было бы штатными средствами.

дело в том, что это нештатная ситуация smile


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
maxim1000
Дата 15.3.2008, 00:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев

Репутация: 3
Всего: 110



Цитата(Bose @  14.3.2008,  21:04 Найти цитируемый пост)
Пока что это звучит слишком грозно для меня. 

та тут ничего грозного нету
просто "svnadmin dump /path2/repository2 > qqq.txt"
потом "svnadmin load /path1/repository1 < qqq.txt"

а перед этим можно в repository1 в корне создать папкус каким-нибудь неповторимым именем и скинуть туда всё из корня, потом можно выполнять эти две команды, получится в корне созданная папка с предыдущим содержимым корня и остальное из repository2

только перед всеми этими операциями я бы посоветовал скопировать репозиторий или его дамп в безопасное место smile


--------------------
qqq
PM WWW   Вверх
Bose
Дата 15.3.2008, 16:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1458
Регистрация: 5.3.2005
Где: Riga, Latvia

Репутация: 3
Всего: 51



Теперь вопросов стало ещё больше. =)

Цитата(maxim1000 @  15.3.2008,  00:32 Найти цитируемый пост)
та тут ничего грозного нету
просто "svnadmin dump /path2/repository2 > qqq.txt"
потом "svnadmin load /path1/repository1 < qqq.txt"


а где взять svnadmin ?

У меня на компе установлен TortoiseSVN, там такого файла я не нашёл. Доступа к серверу у меня нет. При желании конечно, могу попросить нашего админа пустить "порулить" серваком - но вообще подвергать все исходники риску не хочется.

Цитата(maxim1000 @  15.3.2008,  00:32 Найти цитируемый пост)
только перед всеми этими операциями я бы посоветовал скопировать репозиторий или его дамп в безопасное место

А как сделать это?
PM MAIL WWW Skype   Вверх
maxim1000
Дата 15.3.2008, 23:17 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев

Репутация: 3
Всего: 110



Цитата(Bose @  15.3.2008,  16:26 Найти цитируемый пост)
а где взять svnadmin ?

У меня на компе установлен TortoiseSVN, там такого файла я не нашёл.

а... там, наверное, нету

впрочем, svn можно скачать (достаточно в google набрать subversion и перейти по первой ссылке)
там будут утилиты командной строки, среди них и svnadmin


Цитата(Bose @  15.3.2008,  16:26 Найти цитируемый пост)
При желании конечно, могу попросить нашего админа пустить "порулить" серваком - но вообще подвергать все исходники риску не хочется.

тут вопрос в том, кто у вас занимается репозиториями, ИМХО, эта задача как раз для него


Цитата(Bose @  15.3.2008,  16:26 Найти цитируемый пост)
подвергать все исходники риску не хочется.

тогда стоит сделать так:
svnadmin dump /path1/repository1 > 1.txt
svnadmin dump /path2/repository2 > 2.txt
создать третий репозиторий в нужном месте
svnadmin load /path3/repository3 < 1.txt
svnadmin load /path3/repository3 < 2.txt

при таком подходе доступ к каждому из двух репозиториев осуществляется только на чтение, так что ничего испортить не получится


Цитата(Bose @  15.3.2008,  16:26 Найти цитируемый пост)
А как сделать это?

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

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


--------------------
qqq
PM WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
arilou

НА ЗЛОБУ ДНЯ: Дорогие посетители, прошу обратить внимание на то, что новые темы, касающиеся новых вопросов, создаются кнопкой "Новая тема", а не "Ответить"! Любые оффтопиковые вопросы, заданные в текущих темах, будут удалены.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, arilou.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | УП: Инструменты | Следующая тема »


 




[ Время генерации скрипта: 0.0829 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.