Идеальное решение состоит в том, чтобы сохранить локальное репозиторий Mercurial и работать только с этим локальным репо в существующем битовом сегменте удаленного репо Mercurial.
С помощью плагина , подобного Hg-Git , вы можете, по крайней мере, загружать и извлекать хранилище Git-сервера из Mercurial, что позволяет вам перемещаться из репозитория GitHub в локальный Ртутный репо.
Из этого локального (Mercurial) репо вы можете работать в обычном режиме с удаленным репо Bitbucket.
ОП добавляет:
У меня это не сработало, поэтому я попытался перевести git repo в hg repo и из этого репо вытащить в мое рабочее репо с изменениями - но там написано: abort: репозиторий не связан - но Я много слился с этим. Любая помощь здесь?
Это имеет смысл, если оба репо были разработаны отдельно, вы не можете толкать / перетаскивать 2 (ртутных) репо друг в друга.
Это подтверждается внизу страницы " Понимание Mercurial " и подробно описано в сообщении в блоге: " Что не может сделать Mercurial: Репозитарий поддеревьев ".
Более практичным решением было бы создать один дополнительный репозиторий («родительский») с двумя вашими репозиториями, объявленными в нем как вложенного репозитория .
Это сделало бы оба репо независимыми, что позволило бы вернуться к репозиторию GitHub из вашего второго ртутного репо.
Если вам не нужно возвращаться в GitHub, но вы действительно хотите иметь один репо, в котором вы объединяете общие файлы, тогда вы можете посмотреть в " Совет по слиянию из несвязанного репозитория с Mercurial " , но это намного сложнее.
Я бы предпочел:
- держать оба репо отдельно
- удалите из первого общие файлы, которые вам нужно объединить во второй.
- сообщает и объединяет эти общие файлы во второй.