Использование Mercurial с Perforce - PullRequest
5 голосов
/ 20 августа 2010

У кого-нибудь есть советы по использованию Mercurial в качестве внешнего интерфейса для Perforce?То, что я хотел бы сделать, это использовать Mercurial для обработки действительно гранулярных изменений, а затем, как только я что-то сделаю, отправить его обратно на сервер Perforce.

Я нашел эту статью http://www.dehora.net/journal/2008/01/05/using-mercurial-with-perforce/, но она не предлагает никаких инструментов, помогающих с интеграциями.Есть ли что-нибудь?Я полагаю, что я ищу, извлеките любые новые изменения из Perforce, интегрируйте их в мой локальный Mercurial, затем сверните все коммиты Mercurial, которые я сделал со времени последней интеграции, и отправьте их в Perforce.Похож на git-p4.

Ответы [ 2 ]

5 голосов
/ 20 августа 2010

Я получил ошибку, когда перешел по указанной вами ссылке. Но я предлагаю вам взглянуть на расширение perfarce (мне нравится это имя!). Я не использовал его сам, но, насколько я понимаю, люди используют его для преодоления разрыва между Mercurial и Perforce.

См. Также вики-страницу на Выполните концепции . Кажется, в нем много полезной информации.

1 голос
/ 02 апреля 2012

Как говорит Мартин, Perfarce - это то, что вы хотите. Я использовал его на предыдущей работе, и в целом он работает довольно хорошо, если вы просто работаете с одной ветвью перформанса в одном ртутном клоне. Если вы начнете клонировать несколько раз из своего оригинального клона Mercurial, то все станет сложнее. Не невозможно, просто сложно.

В целом, это работает путем объединения всех изменений с момента вашего последнего извлечения из Perforce. Создание единого списка изменений исполнения из них. Пометьте комментарий этого списка изменений хешем версии Mercurial и подтвердите его исполнение. Затем он повторно импортирует это изменение из Perforce и объединяет его в ваше дерево Mercurial, и, поскольку они оба одинаковые, слияния нет.

В основном это работает довольно хорошо для рабочих процессов pull / edit / commit / update. К сожалению, это не помогает, когда дело доходит до интеграции (если я что-то пропустил), так как ветки Perce не преобразуются в Mercurial. Не знал бы, что сливать.

...