powered by simpleCommunicator - 2.0.35     © 2025 Programmizd 02
Форумы / Управление процессом разработки ИС [игнор отключен] [закрыт для гостей] / SVN. Слияние ревизий из одной ветки
9 сообщений из 9, страница 1 из 1
SVN. Слияние ревизий из одной ветки
    #39503050
TopCore
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте!
Есть следующая ситуация: разработка происходит в одной ветке. (Вообще вся разработка велась одним человеком). На одном из этапов я стянул к себе всё необходимое и начал вносить изменения и сделал свои комиты. Полагал, что сотрудник мои изменения возьмёт к себе и будет комитить свои изменения и при этом будут и мои изменения в его ревизиях. Но не знаю, как так вышло, что в его комитах/ревизиях нет моих наработок. Вот так выглядят ревизии последние сейчас:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Ревизия | Автор   | Примечание
--------|---------|-----------
415     | Coder_1 |
396     | Coder_1 |
373     | Coder_1 |
364     | Coder_1 |
204     | Coder_1 | Соответственно выше их нет тоже
197     | Coder_1 | Комит первого кодера без моих наработок
141     | Coder_2 | Мой последний комит
31      | Coder_2 | 
30      | Coder_2 | 
26      | Coder_2 | 
21      | Coder_2 | 
20      | Coder_2 | Тут я втиснулся в разработку первым комитом
14      | Coder_1 | 

1. Как мне слить воедино 141 ревизию с 415 ревизией? 2. Нужно ли мне 141 ревизию сливать только с одной 415 или с областью 197-415?
Спасибо заранее
...
Рейтинг: 0 / 0
SVN. Слияние ревизий из одной ветки
    #39503082
Alexander A. Sak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Diff первого коммита первого кодера после твоих изменений должен показать как так получилось, что изменения исчезли. Что-то вроде
Код: powershell
1.
svn diff -c 197


Скорее всего, был конфликт, и первый кодер сказал, что надо брать только его изменения. В diff-е должны быть видны удаления твоих изменений.
...
Рейтинг: 0 / 0
SVN. Слияние ревизий из одной ветки
    #39503090
Alexander A. Sak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как слить.
Встречал любителей svn merge. Я предпочитаю руками, чтобы понимать что же именно делаю. Но зависит от размеров диффа.
Можно попробовать сделать svn diff -r 20:141 и потом patch на текущее состояние. Будет вроде как руками изменения внес, но вроде как и автоматизированно.
...
Рейтинг: 0 / 0
SVN. Слияние ревизий из одной ветки
    #39503160
TopCore
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander A. SakМожно попробовать сделать svn diff -r 20:141 и потом patch на текущее состояние.При этом нужно, чтобы активной была ревизия 415? С patch ещё не работал. Буду читать о нём. Спасибо.

Что ещё интересно: активна сейчас ревизия 415 и всё-таки некоторые мои файлы из ревизии 141 видны. Т.е. в некоторых файлах кодер_1 проигнорировал и затёр мои наработки, а те файлы, в которых он не кодил, нормально залились при апдейте к нему.
...
Рейтинг: 0 / 0
SVN. Слияние ревизий из одной ветки
    #39503229
Alexander A. Sak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Конечно надо работать в HEAD. Ревизия 415 в нашем случае.
Если часть изменений осталась, то вероятность того, что diff покажет удаление первым кодером, равно 100%. Минус какая-нибудь дикость типа удачно сломанной файловой системы.

Сталкивался с такими проблемами при разработке хранимых процедур на Оракле и Firebird. У каждого свой экземпляр БД, каждый варится сам по себе. Когда надо выложить в VCS, берут из своей базы и коммитят не глядя. Что там было до этого теряется. Или наоборот. Берут из VCS и теряют свои наработки.
Пока работает один человек, с таким не сталкиваются. Появляется второй -- здравствуй тема на sql.ru.
...
Рейтинг: 0 / 0
SVN. Слияние ревизий из одной ветки
    #39503254
TopCore
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander A. Sak, посмотрел я diff`ом ревизию 197: действительно были удалены мои наработки. Теперь я по Вашему совету создал diff файл с помощью команды:
Код: plaintext
 $ svn diff -r 14:141 > project_r14_141_for_patch.diff 

У Вас было в посте выше написано от 20 ревизии, но тогда не видны полные мои изменения относительно 14 ревизии. Поэтому взял диапазон 14:141. Теперь буду тестировать/применять patch и устранять конфликты.
...
Рейтинг: 0 / 0
SVN. Слияние ревизий из одной ветки
    #39503475
TopCore
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Открываю Tortoise Merge, выбираю пункт Apply..., указываю пути к patch-файлу и проекту, выводится список всех файлов, которые необходимо пропатчить и среди них 4 файла с состоянием "failed hunks: 3". Это значит, что файлы он не может пропатчить?
...
Рейтинг: 0 / 0
SVN. Слияние ревизий из одной ветки
    #39503531
Alexander A. Sak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Похоже на то. Тут уже надо по месту разбираться. Я, как уже писал, обычно делаю все руками.
Может, там код настолько изменился, что старые модификации не могут быть применены.
...
Рейтинг: 0 / 0
SVN. Слияние ревизий из одной ветки
    #39503575
TopCore
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander A. Sak, к счастью моего кода немного пока и многие файлы заапдейтились кодером_1 и он их не менял. Я начал уже ручками всё необходимое в порядок приводить.
Спасибо Вам большое за помощь. Хоть немного больше узнал сегодня об SVN.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Управление процессом разработки ИС [игнор отключен] [закрыт для гостей] / SVN. Слияние ревизий из одной ветки
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]