Как перейти с Mercurial (hg) на Perforce (p4)? - PullRequest
1 голос
/ 16 декабря 2010

У меня есть база данных Mercurial, которую я хочу перенести в Perforce и сохранить все изменения. Скажи мне, как я могу это сделать.

Ответы [ 4 ]

3 голосов
/ 19 марта 2013

Обновление март / 2013:

Просто для обновления информации:

svn -> p4

Существует новый инструмент под названием p4convert-svn: p4convert-svn doc

Остерегайтесь регистров файловой системы в / чувствительности.

рт.ст. -> р4

Следующий инструмент не упоминается много, но рекомендуется поддержкой поддержки:

рт. Ст., Конвертировать р4-склад раковины

Добавляет приемник p4 в расширение hg convert. Недостатком является то, что он подходит для Mercurial 1.7.3, который немного устарел на сегодняшний день (текущий 2.2.5). Его можно легко объединить вручную в версию 2.0.2, что может быть достаточно даже для пользователей расширений большого файла.

Для получения дополнительной информации прочитайте файл Readme-P4.txt в депо.

1 голос
/ 17 декабря 2010

Взгляните на раздел Perforce на вики-странице Mercurial по конвертации репозиториев. Кажется, есть поддержка для переноса изменений с Mercurial на Perforce.

1 голос
/ 16 декабря 2010

Один из способов, который я задумал сделать, - это клонировать репозиторий в мое рабочее пространство и выполнить скрипт python для выполнения миграции.Скрипт будет проходить по каждой ревизии, начиная с 0 и заканчивая подсказкой, проверяя файлы p4 по пути.

Я полагаю, что могу получить все комментарии набора изменений с помощью команды log, затем яможно использовать hg log -r i --template {rev}: {file_adds}|{file_dels}|{file_mods}\n, где i - текущая ревизия, чтобы получить файлы, которые были добавлены, удалены, переименованы и т. д. Когда я замечаю, что я нахожусь на новой ветке, я могу проверить ветку в P4 ипри необходимости создайте его.

В конце дня все эти вещи должны быть проверены в соответствии с P4.

0 голосов
/ 20 декабря 2010

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

  • Прочитайте «Руководство по планированию миграции» на веб-сайте Perforce ( pdf ссылка ).Документ написан для ClearCase to Perforce, однако эти три подхода все еще актуальны.В частности, взгляните на метод «Базовый импорт веток», чтобы понять, имеет ли это смысл для вас.

  • Загрузите копию svn2p4sync из Tigris ( ссылка ), поскольку это один из наиболее протестированных доступных сценариев миграции.На сайте Tigris читайте страницу с примечаниями к выпуску / выпускам svn2p4sync, чтобы узнать историю создания скрипта ( ссылка ).

  • Я такжетолько что нашел страницу общего преобразования ( ссылка ) на вики Mercurial (благодаря ссылке в ответе Вима Коенена).

Редактировать: для вашего конкретного случая, где естьэто сценарий, я бы порекомендовал вам использовать ссылку в ответ Вим Коенен ( ссылка ).

HTH,

...