Mercurial репозиторий в качестве оболочки для SVN
Для разработки мы используем репозиторий Mercurial в качестве оболочки для репозитория SVN для проверки кода в проекте. Все работает нормально: разработчики получают изменения и вносят свои изменения в репозиторий Mercurial, а руководитель проекта иногда проталкивает изменения из репозитория Mercurial Server в репозиторий SVN-сервера.
Но мы столкнулись с проблемой. Однажды два разработчика отправили два набора изменений. Для отправки на сервер они объединили все изменения и отправили на сервер. Все хорошо, но после этого мы не можем перенести изменения из репозитория Mercurial в SVN. Мы получаем ошибку:
abort: К сожалению, не удается найти svn-родитель ревизии слияния.
У объединенной ревизии есть два родителя, которые были объединены, и похоже, что это правильно, но я не могу запихнуть в svn после и не понимаю, почему SVN не может найти родителя.
Любая помощь будет очень полезна, спасибо
1 ответ
Mercurial специально hgsubversion может быть очень хорошим клиентом для Subversion. Однако, сказал, что есть ограничения, которые должны соблюдаться.
Хорошо, что вы можете
1) Сделайте несколько коммитов в вашем Mercurial репо и отправьте все эти изменения как одну ревизию в хранилище Subversion
Плохо то, что у вас до сих пор нет свободы обмена между различными ртутными хранилищами
1) Вы не можете обмениваться изменениями без использования Subversion в качестве посредника.
В основном, я использую hgsubversion, когда у нас есть ранее существовавший репозиторий subversion, и мы хотим перейти на Mercurial, не теряя всей этой истории, содержащейся в репозитории subbersion.
Если вы хотите продолжать использовать, вы должны соблюдать определенные ограничения. Смотрите ссылку 2. Ниже.
Рекомендации: