Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Подскажите с SVN'ом  (Прочитано 7922 раз)
0 Пользователей и 1 Гость смотрят эту тему.
yudjin
Помогающий

ua
Offline Offline
Пол: Мужской

« : 29-10-2011 20:14 » 

Добрый вечер.
Случайно закоммитил одним махом пару десятков файлов, которые должны были пойти в разные коммиты. Соотв., в репозитории появилась ревизия N, куда весь этот разношерстный хлам и записался.

Я все таки хочу эту кучу файлов коммитить по группам. Что можно сделать? Возможно ли откатить эти изменения на сервере и закоммититься как надо?
Записан
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 29-10-2011 22:28 » 

Если уже закомитил, то поздно пить Боржоми.
Но, можно игнорировать последние изменения: слить предыдущую версию и закоптить ее как новую. Подумай как.
« Последнее редактирование: 29-10-2011 22:30 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #2 : 06-11-2011 13:22 » 

Увидел тему снова и подумалось, нельзя ли сделать так: сделать ответвление от версии до проблемного комита, удалить текущую версию и переместить ответвленную версию на ее место...
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Kivals
Команда клуба

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #3 : 07-11-2011 10:58 » 

Путь есть, но непростой (нужен полный доступ к репозиторию для использования svnadmin).
1. Блокируешь репозиторий, чтобы в процессе никто не вмешался
2. Делаешь dump (svnadmin dump) репозитория до нужной (предыдущей) версии (svnadmin help dump в помощь) - получаешь текстовый файл дампа
3. Восстанавливаешь (svnadmin load) репозиторий
4. Разблокируешь п.1
5. Получаешь рабочую версию репозитория (svn checkout)
6. Сливаешь в нее измененные файлы и коммитишь как нужно

P.S. Я в свое время проглядел, что dump можно делать до выбранной версии - потому руками удалял строки из полученного полного дампа репозитория - тоже ничего страшного Улыбаюсь
Записан
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #4 : 07-11-2011 11:06 » 

Дамп получается по диапазону ревизий?
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Kivals
Команда клуба

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #5 : 07-11-2011 11:19 » 

RXL, да. Если указать с первой по предпоследнюю - получим без последнего commit
>svnadmin help dump
dump: usage: svnadmin dump REPOS_PATH [-r LOWER[:UPPER] [--incremental]]

[...cut...]
Записан
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #6 : 07-11-2011 12:17 » new

Спасибо. Запомню на случай косяка Улыбаюсь
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines