На курсах по использованию DVCS это один из основных вариантов использования, который я объясняю, и один, который, я думаю, показывает, насколько потрясающими являются DVCS ...
У вас есть несколько способов сделать это.
Ручной способ
Вы SVN / checkout код, затем Hg / init и Hg / commit все.Затем вы выполняете свою работу под Hg, совершая небольшие и частые атомные модификации , как вам угодно, локально .Когда вы хотите зафиксировать обратно в SVN, вы сначала Hg / up ревизии Hg, которую вы сделали сразу после SVN / checkout.Вы SVN / up , не будет конфликтов SVN , потому что вы только что обновились с простой ревизии SVN.Вы Hg / commit , Hg / merge и затем SVN / commit .Если кто-то сделал коммит в SVN, вы повторяете операцию: Hg / up до последней чистой версии SVN, SVN / up и Hg / commit + merge .
От вас зависит, как вы будете следить за последней чистой версией SVN.Вы можете использовать тег, который вы меняете каждый раз, хранить SVN-ревизии в ветке или в отдельном репозитории. TIMTOWTDI
Дополнительное преимущество : это также способ выступать в роли коммиттера SVN для людей, использующих Hg, при этом они не находятся вне контроля версий.* Автоматический способ
Я никогда не использовал его таким образом, но портной может выполнять конвертацию SVN / Hg в обоих направлениях, неоднократно.