Объединение разрывов во временной шкале репозитория Mercurial

Я преобразовал репозиторий Subversion в Mercurial несколько месяцев назад, и в итоге я оставил два бессмысленных пробела в моей истории изменений. Я' м пытаюсь выяснить, могу ли я просто сращивать пробелы, но мне не удалось получить инструменты, которые бы делали именно то, что я хочу.

Я реорганизовал репозиторий Subversion дважды в первые дни проекта: сначала преобразовать корень одного проекта в макет ствола / веток / тегов, а затем добавить второй связанный проект во вторую корневую папку с его собственными стволами / ветками / тегами.

К тому времени, когда я решил переключиться на Mercurial там не велось каких-либо значительных разработок за пределами основного первоначального проекта. Мне удалось использовать утилиты преобразования Mercurial и сопоставление путей для повторной сборки единого разумного ствола в новом репозитории Mercurial, по крайней мере, я так думал.

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

r0 ... r16 | (r17) r18 ... r61 | (r62) r63 ... tip

Результаты двух ревизий после разрывов, r17 и r62, идентичны по содержанию соответствующей ревизии до разрывов - они полностью состоят из операций добавления файлов с точно таким же содержимым, что и предыдущие ревизии. Значимые изменения начинаются только в следующих ревизиях (r18 и r63 соответственно).

Я испортил расширение Mercurial Transplant, пытаясь объединить r17 и r62, но в итоге оно конкатенировало объединенные наборы изменений до самого конца. кончик ветки по умолчанию (на данный момент r405).

Эти лишние головы на самом деле не мешают моей деятельности по разработке, поэтому я отпустил ее на некоторое время. Что заставляет меня решить эту проблему, так это то, что MercurialEclipse жалуется на эти лишние головы каждый раз, когда я извлекаю данные из своего удаленного репозитория.

Кто-нибудь может дать совет, как к этому подойти? Я просто неправильно понимаю флаги команд или использую не тот инструмент? Следует ли мне использовать вместо этого расширение Rebase? А как насчет какого-то процесса дамп-редактирование, дамп-файл-перезагрузка, который мы все использовали с Subversion?

Хотя я опубликовал проект на своем сервере разработки, существует только пара клонов, поэтому уничтожьте эти копии и повторное клонирование не должно иметь большого значения.

7
задан bpanulla 1 March 2011 в 01:58
поделиться